1 // { dg-do assemble } 2 // Origin: Mark Mitchell <mark@codesourcery.com> 3 4 typedef int I; 5 typedef int I; 6 7 // DR56 makes clear that duplicate typedefs in class scopes are 8 // invalid. 9 10 struct A { 11 typedef int I; // { dg-message "" } 12 typedef int I; // { dg-error "" } 13 }; 14 15 template <class T> 16 struct S { 17 typedef int I; // { dg-message "" } 18 typedef int I; // { dg-error "" } 19 }; 20 21