http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50237
--- Comment #35 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-01-17 16:00:44 UTC --- Created attachment 26352 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=26352 gcc47-pr50237.patch Untested patch. For ia64 I've kept it (hopefully) as is, for other targets this attempts to detect the missing linker support using as/ld/objdump. There is no testing of the libc/dynamic linker though, what C libraries do support .init_array/.fini_array properly? For glibc I'd say at least all >= 2.4, since 2.4 removed altogether support for configurations where linker didn't support .init_array, so perhaps we could AC_PREPROC_IFELSE and test __GLIBC__ and __GLIBC_MINOR__ macros. What other OSes support .init_array properly and would like it be enabled by default when neither --enable-initfini-array nor --disable-initfini-array is specified?