[llvm] r202119 - Silence GCC warning

Alexey Samsonov samsonov at google.com
Wed Feb 26 00:03:09 PST 2014


Clang doesn't warn here. Small repro:

$ cat tmp/warning/a.cc
#include <cassert>
bool x;
int val;
void foo() {
  assert(x && val == 4 || (!x && val == 5));
}

$ gcc-4.8.2-inst/bin/g++ -c tmp/warning/a.cc -Wall -o a.o
In file included from /gcc-4.8.2-inst/include/c++/4.8.2/cassert:43:0,
                 from tmp/warning/a.cc:1:
tmp/warning/a.cc: In function ‘void foo()’:
tmp/warning/a.cc:5:12: warning: suggest parentheses around ‘&&’ within ‘||’
[-Wparentheses]
   assert(x && val == 4 || (!x && val == 5));
            ^
$ ./bin/clang++ -c tmp/warning/a.cc -Wall -o a.o


On Tue, Feb 25, 2014 at 8:55 PM, David Blaikie <dblaikie at gmail.com> wrote:

> Did clang not catch this? Should it have?
>
>
> On Mon, Feb 24, 2014 at 11:56 PM, Alexey Samsonov <samsonov at google.com>wrote:
>
>> Author: samsonov
>> Date: Tue Feb 25 01:56:00 2014
>> New Revision: 202119
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=202119&view=rev
>> Log:
>> Silence GCC warning
>>
>> Modified:
>>     llvm/trunk/lib/Transforms/Scalar/SROA.cpp
>>
>> Modified: llvm/trunk/lib/Transforms/Scalar/SROA.cpp
>> URL:
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/SROA.cpp?rev=202119&r1=202118&r2=202119&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/lib/Transforms/Scalar/SROA.cpp (original)
>> +++ llvm/trunk/lib/Transforms/Scalar/SROA.cpp Tue Feb 25 01:56:00 2014
>> @@ -2448,7 +2448,7 @@ private:
>>      uint64_t NewEndOffset = std::min(EndOffset, NewAllocaEndOffset);
>>
>>      bool IsDest = &II.getRawDestUse() == OldUse;
>> -    assert(IsDest && II.getRawDest() == OldPtr ||
>> +    assert((IsDest && II.getRawDest() == OldPtr) ||
>>             (!IsDest && II.getRawSource() == OldPtr));
>>
>>      // Compute the relative offset within the transfer.
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>>
>
>


-- 
Alexey Samsonov, MSK
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20140226/a2b804dc/attachment.html>


More information about the llvm-commits mailing list