2 // { dg-lto-options {{-O0 -flto}} }
3 /* We need -O0 to avoid the "Environment" locals in the test functions
4 from being optimized away. */
6 struct Environment { // { dg-lto-warning "8: type 'struct Environment' violates the C\\+\\+ One Definition Rule" }
7 struct AsyncHooks { // { dg-lto-warning "10: type 'struct AsyncHooks' violates the C\\+\\+ One Definition Rule" }
8 int providers_[2]; // { dg-lto-message "the first difference of corresponding definitions is field 'providers_'" }
10 AsyncHooks async_hooks_;
12 void fn2() { Environment a; }