https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101115
--- Comment #3 from Chris Packham <judge.packham at gmail dot com> --- An update[1]. It seems that --disable-tm-clone-registry is the option that results in crtbegin.o having a zero sized .init_array. I can't really follow crcstuff.c but I see USE_TM_CLONE_REGISTRY in the context of .init_array so something is happening when tm-clone-registry is disabled. [1] - https://sourceware.org/pipermail/binutils/2021-June/117066.html