llvm-project/clang/lib
Artem Dergachev fee10106d9 [analyzer] trackNullOrUndefValue: always track through parentheses and casts.
When trying to figure out where a null or undefined value came from,
parentheses and cast expressions are either completely irrelevant, or,
in the case of lvalue-to-rvale cast, straightforwardly lead us in the right
direction when we remove them.

There is a regression that causes a certain diagnostic to appear twice in the
path-notes.cpp test (changed to FIXME). It would be addressed in the next
commit.

Differential revision: https://reviews.llvm.org/D41254

llvm-svn: 321133
2017-12-20 01:03:22 +00:00
..
ARCMigrate Added LLVM_FALLTHROUGH to address warning: this statement may fall through. NFC. 2017-06-03 06:23:19 +00:00
AST Silence a bunch of implicit fallthrough warnings 2017-12-19 22:06:11 +00:00
ASTMatchers Remove creation of out-of-bounds value of enumeration type (resulting in UB). 2017-12-08 23:29:59 +00:00
Analysis Refactor overridden methods iteration to avoid double lookups. 2017-12-17 23:52:45 +00:00
Basic [c++20] P0515R3: Parsing support and basic AST construction for operator <=>. 2017-12-14 15:16:18 +00:00
CodeGen Silence a bunch of implicit fallthrough warnings 2017-12-19 22:06:11 +00:00
CrossTU [CrossTU] Fix handling of Cross Translation Unit directory path 2017-10-27 12:53:37 +00:00
Driver [driver][darwin] Set the 'simulator' environment when it's specified 2017-12-19 19:56:14 +00:00
Edit [clang] Fix format specifiers fixits for nested macros 2017-06-20 20:46:58 +00:00
Format Revert "[ClangFormat] IndentWrappedFunctionNames should be true in the google ObjC style" 2017-12-14 21:44:11 +00:00
Frontend [Driver, CodeGen] pass through and apply -fassociative-math 2017-12-16 16:11:17 +00:00
FrontendTool [CMake] Use #cmakedefine01 for CLANG_ENABLE_(ARCMT|OBJC_REWRITER|STATIC_ANALYZER) 2017-10-18 05:21:17 +00:00
Headers [X86] Add more CPUID bits to cpuid.h to match gcc and support icelake features. 2017-12-20 00:46:09 +00:00
Index Refactor overridden methods iteration to avoid double lookups. 2017-12-17 23:52:45 +00:00
Lex __is_target_environment: Check the environment after parsing it 2017-12-15 20:07:53 +00:00
Parse Fix more inconsistent line endings. NFC. 2017-12-18 19:46:56 +00:00
Rewrite [Analyzer] Add support for displaying cross-file diagnostic paths in HTML output 2017-08-03 18:12:22 +00:00
Sema Add explicit break (PR35700). 2017-12-19 22:21:48 +00:00
Serialization Refactor overridden methods iteration to avoid double lookups. 2017-12-17 23:52:45 +00:00
StaticAnalyzer [analyzer] trackNullOrUndefValue: always track through parentheses and casts. 2017-12-20 01:03:22 +00:00
Tooling [Tooling] Acknowledge that many CompilationDatabases don't support enumeration. 2017-11-24 12:13:55 +00:00
CMakeLists.txt Add Cross Translation Unit support library 2017-09-22 11:11:01 +00:00