commit | 7f839a6b35e5007964b538423b0a570eed26fc10 | [log] [tgz] |
---|---|---|
author | Jordan Rose <jordan_rose@apple.com> | Mon Aug 20 17:04:45 2012 +0000 |
committer | Jordan Rose <jordan_rose@apple.com> | Mon Aug 20 17:04:45 2012 +0000 |
tree | 6f8857660e44ddb3d651aa172954327701c0513d | |
parent | e50ee7e513c0707302bd8e2a78befc318a7d593c [diff] |
[analyzer] The result of && or || is always a 1 or 0. Forgetting to at least cast the result was giving us Loc/NonLoc problems in SValBuilder (hitting an assertion). But the standard (both C and C++) does actually guarantee that && and || will result in the actual values 1 and 0, typed as 'int' in C and 'bool' in C++, and we can easily model that. PR13461 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@162209 91177308-0d34-0410-b5e6-96231b3b80d8