annotate gcc/testsuite/g++.dg/lto/odr-3_1.C @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
145
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
1 typedef struct YYSTYPE { // { dg-lto-message "type" 2 }
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
2 // We get two notes here:
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
3 // note: a different type is defined in another translation unit
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
4 // note: a type with different number of fields is defined in another translation unit
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
5 } YYSTYPE;
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
6 union yyalloc { // { dg-lto-message "type" 2 }
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
7 // We get here three notes:
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
8 // note: a different type is defined in another translation unit
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
9 // note: type 'union yyalloc' itself violates the C++ One Definition Rule
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
10 short yyss;
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
11 YYSTYPE yyvs; // { dg-lto-message "field of same name but different type is defined in another translation unit" }
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
12
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
13 };
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
14
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
15 yyalloc a; // { dg-lto-message "'a' was previously declared here" }
1830386684a0 gcc-9.2.0
anatofuz
parents:
diff changeset
16