On Tue, Sep 18, 2012 at 6:37 PM, Fariborz Jahanian <[email protected]> wrote: > Author: fjahanian > Date: Tue Sep 18 12:37:21 2012 > New Revision: 164143 > > URL: http://llvm.org/viewvc/llvm-project?rev=164143&view=rev > Log: > c: warn when an integer value comparison with an > integral expression have the obvious result. > Patch reviewed by John McCall off line. > // rdar://12202422
This triggers a couple of warnings in Chromium. (We're tracking it at http://crbug.com/151927) Most look like bugs, but this one doesn't really: /usr/local/google/work/chrome/src/v8/src/utils.h:977:20: warning: comparison of constant 32 with expression of type 'v8::internal::AstPropertiesFlag' is always true [-Wtautological-constant-out-of-range-compare] ASSERT(element < static_cast<int>(sizeof(T) * CHAR_BIT)); ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ The code, with context, is available at [1]. This is in a class template, and 'element' has the type of a template parameter, so depending on what type the template is instantiated with, the comparison might be tautological or not. Perhaps the warning shouldn't fire for expressions that depend on template parameters? Thanks, Hans 1. code.google.com/searchframe#W9JxUuHYyMg/trunk/src/utils.h&l=976 _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
