1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
// { dg-do assemble } // GROUPS passed enums template<class T> struct templ { enum { val = 0 }; }; struct Foo { enum { bar = 0, len = templ<int>::val }; }; void func() { int s = Foo::bar; // Ensure that expansion of templ did not erase bar }