I have a faint memory of reading that code like int x[4] = {};
used to initialize a struct/array to default values is relying on a non standard (but widespread) extension that first appeared in gcc, and the correct version (as apparently stated in the standard) is int x[4] = { 0 };
Is this correct?