File tree Expand file tree Collapse file tree 1 file changed +6
-0
lines changed Expand file tree Collapse file tree 1 file changed +6
-0
lines changed Original file line number Diff line number Diff line change @@ -359,3 +359,9 @@ struct alignment { // c17-error {{redefinition of 'alignment'}} \
359359 c23-error {{type 'struct alignment' has a member with an attribute which currently causes the types to be treated as though they are incompatible}}
360360 int x ;
361361};
362+
363+ // Previously, this code was silently accepted by Clang despite the
364+ // incompatible redefinitions. This is now correctly being caught.
365+ unsigned GH28586 ; // both-note 2 {{previous definition is here}}
366+ enum { GH28586_1 } GH28586 ; // both-error-re {{redefinition of 'GH28586' with a different type: 'enum (unnamed enum at {{.*}})' vs 'unsigned int'}}
367+ enum { GH28586_2 } GH28586 ; // both-error-re {{redefinition of 'GH28586' with a different type: 'enum (unnamed enum at {{.*}})' vs 'unsigned int'}}
You can’t perform that action at this time.
0 commit comments