[analyzer] Fix a crash on casting symbolic pointers to derived classes.
authorArtem Dergachev <artem.dergachev@gmail.com>
Wed, 26 Sep 2018 00:17:14 +0000 (00:17 +0000)
committerArtem Dergachev <artem.dergachev@gmail.com>
Wed, 26 Sep 2018 00:17:14 +0000 (00:17 +0000)
commit69ece336b8c06b71102e25f0d5770032d31b54cd
tree74f306af753a33a6faaa2000168ee0d182a7003f
parent707c0ab7553ea80e441a2030abc495d9129ee3f7
[analyzer] Fix a crash on casting symbolic pointers to derived classes.

Commit r340984 causes a crash when a pointer to a completely unrelated type
UnrelatedT (eg., opaque struct pattern) is being casted from base class BaseT to
derived class DerivedT, which results in an ill-formed region
Derived{SymRegion{$<UnrelatedT x>}, DerivedT}.

Differential Revision: https://reviews.llvm.org/D52189

llvm-svn: 343051
clang/lib/StaticAnalyzer/Core/Store.cpp
clang/test/Analysis/casts.cpp