Add some more asserts to clearly indicate that there are special cases
authorChandler Carruth <chandlerc@gmail.com>
Fri, 4 Nov 2016 06:32:57 +0000 (06:32 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Fri, 4 Nov 2016 06:32:57 +0000 (06:32 +0000)
commit59666777fbecef89a986147f708cbff29be50f26
tree5e29402c4c17941e2b3aa649f2a5fd3be0288a7a
parentd211c648b901df63e7ff0f14fe393883a168b703
Add some more asserts to clearly indicate that there are special cases
which guarantee pointers are not null. These all seem to have useful
properties and correlations to document, in one case we even had it in
a comment but now it will also be an assert.

This should prevent PVS-Studio from incorrectly claiming that there are
a bunch of potential bugs here. But I feel really strongly that the
PVS-Studio warnings that pointed at this code have a far too high
false-positive rate to be entirely useful. These are just places where
there did seem to be a useful invariant to document and verify with an
assert. Several other places in the code were already correct and
already have perfectly clear code documenting and validating their
invariants, but still ran afoul of PVS-Studio.

llvm-svn: 285985
clang/lib/AST/Expr.cpp
clang/lib/Basic/IdentifierTable.cpp
clang/lib/Lex/HeaderSearch.cpp