https://gcc.gnu.org/bugzilla/show_bug.cgi?id=93278
--- Comment #9 from doug mcilroy <doug at cs dot dartmouth.edu> --- If I can play with the assembler to accomplish the desired result, why can't gcc? I notice that gcc is smart enough already to produce uninitialized space for char a[10000000] = "\0"; int main(){ return 0; } It even does so for a string of 1000 \0's. But not for one x. -------------------------------------- It's lamentable that a common feature--partially initialized arrays--can lead to stratospheric compile time. Apologies for wishfully misreading partial sections into the EPL spec.