template <class a>
class A {};
template <class b>
class B {};

A<B<void()> > x;


If you leave out the space between the two >'s at the definition of x, it fails
to compile. As far as I'm aware this should work in C++0x mode. The compiler
was run with -std=c++0x.

[EMAIL PROTECTED]:~/atlantisos/kernel$ g++ -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ./configure --enable-languages=c,c++
Thread model: posix
gcc version 4.3.1 (GCC)
[EMAIL PROTECTED]:~/atlantisos/kernel$ uname -a
Linux blackbox 2.6.17.13 #12 SMP PREEMPT Fri Jun 22 23:13:07 CEST 2007 i686
Intel(R) Pentium(R) D  CPU 2.66GHz GenuineIntel GNU/Linux


-- 
           Summary: No space between >'s not always handled in C++0x
           Product: gcc
           Version: 4.3.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: peterbindels at gmail dot com
 GCC build triplet: i486-slackware-linux
  GCC host triplet: i486-slackware-linux
GCC target triplet: i586-pc-elf


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36460

Reply via email to