RAD Studio
ContentsIndex
PreviousUpNext
E2107: Invalid use of template 'template' (C++)

This error results when attempting to use a template template parameter in any way other than to reference a template specialization, or to pass that parameter in turn as a template template argument to another template. For example:

template<template<class T> class U>
class foo;
template<template<class T> class U>
class bar
{
U x;// error: not a specialization
U<U> y;// ok: used as a specialization, and as a
// template template argument
U<bar> z;// ok: used to reference a specialization
};
Copyright(C) 2009 Embarcadero Technologies, Inc. All Rights Reserved.
What do you think about this topic? Send feedback!