<div dir="ltr">Ah, thanks for the detail - can't say I was familiar with that.<br></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 3, 2016 at 3:01 PM, Aaron Ballman <span dir="ltr"><<a href="mailto:aaron@aaronballman.com" target="_blank">aaron@aaronballman.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On Thu, Mar 3, 2016 at 5:59 PM, David Blaikie via llvm-commits<br>
<<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br>
> Portability for one, I'd imagine - does _Exit exist in all the platforms we<br>
> want to run on?<br>
<br>
</span>It should, it's part of the C standard library incorporated by<br>
reference into C++ (aka, C99).<br>
<span class="HOEnZb"><font color="#888888"><br>
~Aaron<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
><br>
> On Thu, Mar 3, 2016 at 2:56 PM, Kostya Serebryany <<a href="mailto:kcc@google.com">kcc@google.com</a>> wrote:<br>
>><br>
>> Why?<br>
>> I call this when interrupted by Ctrl-C, so I don't want any<br>
>> std::at_quick_exit handlers to be called.<br>
>> Otherwise it's just _Exit<br>
>><br>
>> On Thu, Mar 3, 2016 at 2:46 PM, David Blaikie <<a href="mailto:dblaikie@gmail.com">dblaikie@gmail.com</a>> wrote:<br>
>>><br>
>>> quick_exit, perhaps?<br>
>>> <a href="http://en.cppreference.com/w/cpp/utility/program/quick_exit" rel="noreferrer" target="_blank">http://en.cppreference.com/w/cpp/utility/program/quick_exit</a><br>
>>><br>
>>> On Thu, Mar 3, 2016 at 2:36 PM, Kostya Serebryany via llvm-commits<br>
>>> <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br>
>>>><br>
>>>> Author: kcc<br>
>>>> Date: Thu Mar  3 16:36:37 2016<br>
>>>> New Revision: 262667<br>
>>>><br>
>>>> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=262667&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=262667&view=rev</a><br>
>>>> Log:<br>
>>>> [libFuzzer] when interrupted, call _Exit() instead of exit()<br>
>>>><br>
>>>> Modified:<br>
>>>>     llvm/trunk/lib/Fuzzer/FuzzerLoop.cpp<br>
>>>><br>
>>>> Modified: llvm/trunk/lib/Fuzzer/FuzzerLoop.cpp<br>
>>>> URL:<br>
>>>> <a href="http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/FuzzerLoop.cpp?rev=262667&r1=262666&r2=262667&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/FuzzerLoop.cpp?rev=262667&r1=262666&r2=262667&view=diff</a><br>
>>>><br>
>>>> ==============================================================================<br>
>>>> --- llvm/trunk/lib/Fuzzer/FuzzerLoop.cpp (original)<br>
>>>> +++ llvm/trunk/lib/Fuzzer/FuzzerLoop.cpp Thu Mar  3 16:36:37 2016<br>
>>>> @@ -130,7 +130,7 @@ void Fuzzer::CrashCallback() {<br>
>>>>  void Fuzzer::InterruptCallback() {<br>
>>>>    Printf("==%d== libFuzzer: run interrupted; exiting\n", GetPid());<br>
>>>>    PrintFinalStats();<br>
>>>> -  exit(0);<br>
>>>> +  _Exit(0);  // Stop right now, don't perform any at-exit actions.<br>
>>>>  }<br>
>>>><br>
>>>>  void Fuzzer::AlarmCallback() {<br>
>>>><br>
>>>><br>
>>>> _______________________________________________<br>
>>>> llvm-commits mailing list<br>
>>>> <a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
>>>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
>>><br>
>>><br>
>><br>
><br>
><br>
> _______________________________________________<br>
> llvm-commits mailing list<br>
> <a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a><br>
> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
><br>
</div></div></blockquote></div><br></div>