http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52036
--- Comment #7 from Daniel Krügler <daniel.kruegler at googlemail dot com> 2012-01-30 19:28:05 UTC --- (In reply to comment #4) > (In reply to comment #3) > > However compilation still fails if pi is given internal linkage by > > declaring it > static, i.e. > > > > int main() > > { > > static constexpr float pi = 3.14; > > > > Or even: > > > > namespace { > > static constexpr float pi = 3.14; > > } > > I agree that both examples should work and that the lack of that is a bug when > compiled in C++11 mode. Paolo, this bug should be reopened. Partial correction: The first example involving a function local static has no linkage (and should not be accepted), but the second example does.