This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
template bug (all versions)
- To: gcc-bugs at gcc dot gnu dot org
- Subject: template bug (all versions)
- From: Carlo Wood <carlo at alinoe dot com>
- Date: Sun, 5 Mar 2000 02:49:56 +0100
Hi,
the following code snippet fails to compile with gcc:
template<unsigned int n>
struct A {
template<unsigned int k>
void f(void) { }
};
template<unsigned int m>
struct B {
void foo(void)
{
A<0> x;
x.f<0>(); // This is line 12
}
};
It seems as if gcc doesn't understand the '<' in the line "x.f<0>();".
When `B' is NOT a template, it compiles without problems.
Regards,
Carlo Wood
Reading specs from /usr/local/egcs/lib/gcc-lib/i686-pc-linux-gnu/2.96/specs
gcc version 2.96 20000214 (experimental)
/usr/local/egcs/lib/gcc-lib/i686-pc-linux-gnu/2.96/cpp -lang-c++ -v -iprefix /usr/local/bin/../lib/gcc-lib/i686-pc-linux-gnu/2.96/ -D__GNUC__=2 -D__GNUG__=2 -D__GNUC_MINOR__=96 -D__cplusplus -D__ELF__ -Dunix -Dlinux -D__ELF__ -D__unix__ -D__linux__ -D__unix -D__linux -Asystem(posix) -D__EXCEPTIONS -Acpu(i386) -Amachine(i386) -Di386 -D__i386 -D__i386__ -D__tune_pentiumpro__ 20000305.cc /tmp/ccR6qk0C.ii
GNU CPP version 2.96 20000214 (experimental) (cpplib)
(i386 Linux/ELF)
ignoring nonexistent directory `/usr/local/include/g++-3'
ignoring nonexistent directory `/usr/local/i686-pc-linux-gnu/include'
ignoring nonexistent directory `/usr/local/lib/gcc-lib/i686-pc-linux-gnu/2.96/include'
#include "..." search starts here:
#include <...> search starts here:
/usr/local/egcs/include/g++-3
/usr/local/include
/usr/local/egcs/i686-pc-linux-gnu/include
/usr/local/egcs/lib/gcc-lib/i686-pc-linux-gnu/2.96/include
/usr/include
End of search list.
/usr/local/egcs/lib/gcc-lib/i686-pc-linux-gnu/2.96/cc1plus /tmp/ccR6qk0C.ii -quiet -dumpbase 20000305.cc -version -o 20000305.s
GNU C++ version 2.96 20000214 (experimental) (i686-pc-linux-gnu) compiled by GNU C version 2.96 20000214 (experimental).
20000305.cc: In method `void B<m>::foo ()':
20000305.cc:12: parse error before `)'
--
Carlo Wood <carlo@alinoe.com>