https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113183
--- Comment #10 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Changing it into: static void leon_initialise(void) __attribute__((constructor)); Fixes the ICE and fixes the code to be better and not depened on init_array there either ...