On Mon, Mar 21, 2016 at 8:16 PM, James Molloy <james at jamesmolloy.co.uk> wrote:> > Correct > > Out of interest, how does LLD itself handle error reporting when invoked > from the command line, and how does it avoid segfaulting in that case? >It generally reports an error and exit, or in rare circumstances it just segfaults.> Cheers, > > James > > On Mon, 21 Mar 2016 at 19:14 Rafael Espíndola <rafael.espindola at gmail.com> > wrote: > >> On 21 March 2016 at 15:10, James Molloy <james at jamesmolloy.co.uk> wrote: >> > Well sure, it's unlikely, but how many consumers can make that sort of >> > guarantee? And if a consumer can't guarantee the integrity of the ELF >> file >> > they have no choice but not to use LLD, or to fork before using it. >> >> Correct. >> >> Cheers, >> Rafael >> >-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160321/08c9d3e8/attachment.html>
If it can exit, why can't it longjmp back to a library consumer at least? On Mon, 21 Mar 2016 at 19:20 Rui Ueyama <ruiu at google.com> wrote:> On Mon, Mar 21, 2016 at 8:16 PM, James Molloy <james at jamesmolloy.co.uk> > wrote: > >> > Correct >> >> Out of interest, how does LLD itself handle error reporting when invoked >> from the command line, and how does it avoid segfaulting in that case? >> > > It generally reports an error and exit, or in rare circumstances it just > segfaults. > > >> Cheers, >> >> James >> >> On Mon, 21 Mar 2016 at 19:14 Rafael Espíndola <rafael.espindola at gmail.com> >> wrote: >> >>> On 21 March 2016 at 15:10, James Molloy <james at jamesmolloy.co.uk> wrote: >>> > Well sure, it's unlikely, but how many consumers can make that sort of >>> > guarantee? And if a consumer can't guarantee the integrity of the ELF >>> file >>> > they have no choice but not to use LLD, or to fork before using it. >>> >>> Correct. >>> >>> Cheers, >>> Rafael >>> >>-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160321/e33bd157/attachment.html>
We do not enable exceptions and longjmp is not safe. Also, if it can segfault for some pathetic input, "it longjmps in most cases" doesn't help people who wants 100% guarantee like you. On Mon, Mar 21, 2016 at 8:21 PM, James Molloy <james at jamesmolloy.co.uk> wrote:> If it can exit, why can't it longjmp back to a library consumer at least? > > On Mon, 21 Mar 2016 at 19:20 Rui Ueyama <ruiu at google.com> wrote: > >> On Mon, Mar 21, 2016 at 8:16 PM, James Molloy <james at jamesmolloy.co.uk> >> wrote: >> >>> > Correct >>> >>> Out of interest, how does LLD itself handle error reporting when invoked >>> from the command line, and how does it avoid segfaulting in that case? >>> >> >> It generally reports an error and exit, or in rare circumstances it just >> segfaults. >> >> >>> Cheers, >>> >>> James >>> >>> On Mon, 21 Mar 2016 at 19:14 Rafael Espíndola < >>> rafael.espindola at gmail.com> wrote: >>> >>>> On 21 March 2016 at 15:10, James Molloy <james at jamesmolloy.co.uk> >>>> wrote: >>>> > Well sure, it's unlikely, but how many consumers can make that sort of >>>> > guarantee? And if a consumer can't guarantee the integrity of the ELF >>>> file >>>> > they have no choice but not to use LLD, or to fork before using it. >>>> >>>> Correct. >>>> >>>> Cheers, >>>> Rafael >>>> >>>-------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160321/583ed852/attachment.html>