// { dg-do assemble } // { dg-options "-O -Wall -fgcse" } // From: Klaus-Georg Adams // Reported against EGCS snaps 98/06/28. // // Compilation of this program with the flags g++ -Wall -O -fgcse // or -O2 produces spurious warnings in the standard // header . // // They vanish if the declaration of a::b is taken out. #include std::string foo(); struct a { void bar(); enum b { c, d }; b theb; std::string baz; }; void a::bar() { baz += foo() + foo(); baz += foo() + foo() + "foo"; }