annotate gcc/testsuite/g++.dg/lto/pr83121_0.C @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 // { dg-lto-do link }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2 // { dg-lto-options {{-O0 -flto}} }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3 /* We need -O0 to avoid the "Environment" locals in the test functions
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4 from being optimized away. */
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 struct Environment { // { dg-lto-warning "8: type 'struct Environment' violates the C\\+\\+ One Definition Rule" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 struct AsyncHooks { // { dg-lto-warning "10: type 'struct AsyncHooks' violates the C\\+\\+ One Definition Rule" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8 int providers_[2]; // { dg-lto-message "the first difference of corresponding definitions is field 'providers_'" }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9 };
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10 AsyncHooks async_hooks_;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11 };
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 void fn2() { Environment a; }