------- Comment #3 from jakub at gcc dot gnu dot org 2010-08-23 10:16 ------- As can be seen in inline unsigned long foo () { return 4; } struct S { S (); }; void bar () { typedef int T[foo () == 4 ? 1 : -1]; } S::S () { typedef int T[foo () == 4 ? 1 : -1]; } the problem only happens in cdtors, thus probably related to the cdtor duplication.
-- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45382