Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 21 Nov 2018 16:22:17 +0100
From: Szabolcs Nagy <nsz@...t70.net>
To: musl@...ts.openwall.com, Ondrej Jirman <megous@...ous.com>
Subject: Re: [RFC PATCH] Fix __libc_start_main prototype in [r]crt1.c
 to match the caller

* Szabolcs Nagy <nsz@...t70.net> [2018-11-21 16:09:04 +0100]:

> * megous@...ous.com <megous@...ous.com> [2018-11-21 15:51:50 +0100]:
> > From: Ondrej Jirman <megous@...ous.com>
> > 
> > __libc_start_main function is not using the last three arguments.
> > GCC in LTO mode complains about mismatch.
> 
> fix it in the other way then.
> 
> > -	__libc_start_main(main, argc, argv, _init, _fini, 0);
> > +	__libc_start_main(main, argc, argv);
> 
> you just completely broke everything there didnt you?
> 

sorry the _init, _fini there is only needed for glibc compat
(i.e. executable linked with musl crt1.o, but using glibc
to run it, which should not be a common use case)

> how will the _init/_fini code of executables with
> DT_INIT, DT_FINI dynamic tags run?
> 
> i think gcc still havent fixed weak object symbol alias
> bugs with lto so e.g. you will get incorrect environ if
> you lto link the libc.
> https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69271

these lto issues still apply.

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.