[Bug c++/45236] New: Can't access nested type of a partial class specialization involving variadic parameters

rodolfo at rodsoft dot org gcc-bugzilla@gcc.gnu.org
Mon Aug 9 13:56:00 GMT 2010


The following code doesn't compile on gcc-4.4.1, gcc-4.5.0 and gcc-trunk (as of
2010/08/09):

//-----------------------------------------------
template <class T, int S> class foo;

template<template<int...> class C, int... II, int S>
struct foo<C<II...>,S>
{
    struct bar {};
};

template <int... I>
struct A {};

foo<A<3>, 4>::bar x;
//-----------------------------------------------

g++ output:
g++ -std=c++0x    teste.cpp   -o teste
teste.cpp:12:1: error: ‘bar’ in class ‘foo<A<3>, 4>’ does not name a type


-- 
           Summary: Can't access nested type of a partial class
                    specialization involving variadic parameters
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: rodolfo at rodsoft dot org
 GCC build triplet: x86_64-pc-linux-gnu
  GCC host triplet: x86_64-pc-linux-gnu
GCC target triplet: x86_64-pc-linux-gnu


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



More information about the Gcc-bugs mailing list