"use of class template `template <T> class Array' as expression"
Paul Reilly
preilly@allaire.com
Sun Dec 12 14:10:00 GMT 1999
I don't think the following code should generate this error. I posted
this many months ago, but as Martin v. Loewis pointed out I didn't
include all the necessary information. I've simplified the .cc file
and hopefully have included all the information necessary this time.
Thanks,
Paul
----------------------------------- List.cc -----------------------------------
template<class T>
class Array
{
};
namespace gnu
{
class List;
};
namespace java
{
namespace lang
{
class String;
};
};
class gnu::List
{
public:
void createList (Array<::java::lang::String *> *listStrings)
{
};
};
----------------------------------- List.ii -----------------------------------
# 1 "List.cc"
template<class T>
class Array
{
};
namespace gnu
{
class List;
};
namespace java
{
namespace lang
{
class String;
};
};
class gnu::List
{
public:
void createList (Array<::java::lang::String *> *listStrings)
{
};
};
-------------------------------- compile output --------------------------------
[preilly@gsxr tmp]$ /usr/local/devel/bin/gcc -v -save-temps -o List List.cc
Reading specs from /usr/local/devel/lib/gcc-lib/i686-pc-linux-gnu/2.96/specs
gcc version 2.96 19991130 (experimental)
/usr/local/devel/lib/gcc-lib/i686-pc-linux-gnu/2.96/cpp -lang-c++ -v -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=96 -D__cplusplus -D__ELF__ -Dunix -D__i386__ -Dlinux -D__ELF__ -D__unix__ -D__i386__ -D__linux__ -D__unix -D__linux -Asystem(posix) -D__EXCEPTIONS -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -D__tune_pentiumpro__ List.cc List.ii
GNU CPP version 2.96 19991130 (experimental) (i386 Linux/ELF)
#include "..." search starts here:
#include <...> search starts here:
/usr/local/devel/lib/gcc-lib/i686-pc-linux-gnu/2.96/../../../../include/g++-3
/usr/local/include
/usr/local/devel/lib/gcc-lib/i686-pc-linux-gnu/2.96/../../../../i686-pc-linux-gnu/include
/usr/local/devel/lib/gcc-lib/i686-pc-linux-gnu/2.96/include
/usr/include
End of search list.
The following default directories have been omitted from the search path:
End of omitted list.
/usr/local/devel/lib/gcc-lib/i686-pc-linux-gnu/2.96/cc1plus List.ii -quiet -dumpbase List.cc -version -o List.s
GNU C++ version 2.96 19991130 (experimental) (i686-pc-linux-gnu) compiled by GNU C version 2.96 19991130 (experimental).
List.cc:21: use of class template `template <T> class Array' as expression
List.cc:21: parse error before `:'
[preilly@gsxr tmp]$
More information about the Gcc-bugs
mailing list