https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88262
--- Comment #3 from joseph at codesourcery dot com <joseph at codesourcery dot com> --- As of October 2017, glibc has a testcase that having main in a shared library works - that's a valid use case, which should work with crt1.o. If it doesn't work for some particular architecture that would be a glibc bug (or conceivably an ld bug) - but I'd also expect it to show up as a failure of the glibc elf/tst-main1 test, and no such failure is listed for any architecture on <https://sourceware.org/glibc/wiki/Release/2.28>.