https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67618 --- Comment #3 from Andreas Schwab <schwab@linux-m68k.org> --- Trying to read the (uninitialized) contents of the allocated memory for x <= 12 would be undefined behaviour, so calling calloc instead does not change the defined behaviour.