https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118136
--- Comment #12 from Richard Biener <rguenth at gcc dot gnu.org> --- I think it should work to compile the startfile with -flto, GCC just assumes main() is called once I think. The diagnostic is "unfortunate" I'd say, but I would say you should just ignore it? I'd say the frontend should canonicalize main()s declaration eventually to the form the targeted runtime expects.