http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52477
--- Comment #3 from Przemysław Pawełczyk <przemoc at gmail dot com> 2012-03-04 14:24:10 UTC --- Thanks for solution, but... Isn't such order obvious or isn't it at least the most widely used one? I mean that by default static data initialization should precede constructor-functions, no? It worked in gcc 4.6 and is there any good reason to break it?