Say I have a C++ function like this: void my_function() { static int x = 0; } Then will initialization of x to 0 be delayed until the first call of the function? The ABI spec talks about that here: http://www.codesourcery.com/public/cxx-abi/abi.html#once-ctor I was unclear whether this only applies to objects with constructors, or whether it also applies to POD initialized with a constant, as above. In this case, I'm especially curious about g++ 4.1's implementation. Sorry if this is an overly obscure question.