[llvm] r262472 - libfuzzer: fix compiler warnings
Dmitry Vyukov via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 3 23:45:58 PST 2016
Btw, do we test build with gcc? The particular warning that broke CF
seems to be gcc-specific.
On Wed, Mar 2, 2016 at 10:14 PM, Kostya Serebryany <kcc at google.com> wrote:
> Thanks for the fix.
> By default we don't use -Werror when building clang and the libFuzzer
> configuration used on bots includes asserts -- so we did not see these.
> Added -Werror in r262517.
>
>
>
> On Wed, Mar 2, 2016 at 1:54 AM, Dmitry Vyukov via llvm-commits
> <llvm-commits at lists.llvm.org> wrote:
>>
>> Author: dvyukov
>> Date: Wed Mar 2 03:54:40 2016
>> New Revision: 262472
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=262472&view=rev
>> Log:
>> libfuzzer: fix compiler warnings
>>
>> - unused sigaction/setitimer result (used in assert)
>> - unchecked fscanf return value
>> - signed/unsigned comparison
>>
>>
>> Modified:
>> llvm/trunk/lib/Fuzzer/FuzzerTraceState.cpp
>> llvm/trunk/lib/Fuzzer/FuzzerUtil.cpp
>>
>> Modified: llvm/trunk/lib/Fuzzer/FuzzerTraceState.cpp
>> URL:
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/FuzzerTraceState.cpp?rev=262472&r1=262471&r2=262472&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/lib/Fuzzer/FuzzerTraceState.cpp (original)
>> +++ llvm/trunk/lib/Fuzzer/FuzzerTraceState.cpp Wed Mar 2 03:54:40 2016
>> @@ -319,7 +319,7 @@ void TraceState::DFSanCmpCallback(uintpt
>> AddMutation(Pos, CmpSize, Data - 1);
>> }
>>
>> - if (CmpSize > LR.End - LR.Beg)
>> + if (CmpSize > (size_t)(LR.End - LR.Beg))
>> AddMutation(LR.Beg, (unsigned)(LR.End - LR.Beg), Data);
>>
>>
>>
>> Modified: llvm/trunk/lib/Fuzzer/FuzzerUtil.cpp
>> URL:
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Fuzzer/FuzzerUtil.cpp?rev=262472&r1=262471&r2=262472&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/lib/Fuzzer/FuzzerUtil.cpp (original)
>> +++ llvm/trunk/lib/Fuzzer/FuzzerUtil.cpp Wed Mar 2 03:54:40 2016
>> @@ -19,6 +19,7 @@
>> #include <signal.h>
>> #include <sstream>
>> #include <unistd.h>
>> +#include <errno.h>
>>
>> namespace fuzzer {
>>
>> @@ -84,14 +85,18 @@ static void SetSigaction(int signum,
>> struct sigaction sigact;
>> memset(&sigact, 0, sizeof(sigact));
>> sigact.sa_sigaction = callback;
>> - int Res = sigaction(signum, &sigact, 0);
>> - assert(Res == 0);
>> + if (sigaction(signum, &sigact, 0)) {
>> + Printf("libFuzzer: sigaction failed with %d\n", errno);
>> + exit(1);
>> + }
>> }
>>
>> void SetTimer(int Seconds) {
>> struct itimerval T {{Seconds, 0}, {Seconds, 0}};
>> - int Res = setitimer(ITIMER_REAL, &T, nullptr);
>> - assert(Res == 0);
>> + if (setitimer(ITIMER_REAL, &T, nullptr)) {
>> + Printf("libFuzzer: setitimer failed with %d\n", errno);
>> + exit(1);
>> + }
>> SetSigaction(SIGALRM, AlarmHandler);
>> }
>>
>> @@ -105,7 +110,8 @@ void SetSigIntHandler() { SetSigaction(S
>> int NumberOfCpuCores() {
>> FILE *F = popen("nproc", "r");
>> int N = 0;
>> - fscanf(F, "%d", &N);
>> + if (fscanf(F, "%d", &N) != 1)
>> + N = 1;
>> fclose(F);
>> return N;
>> }
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
>
More information about the llvm-commits
mailing list