diff options
author | Jordan Rose <jordan_rose@apple.com> | 2012-08-13 23:46:01 +0000 |
---|---|---|
committer | Jordan Rose <jordan_rose@apple.com> | 2012-08-13 23:46:01 +0000 |
commit | 710f6b1259fb9f13cfa34b3d093d6130b0fb8b3a (patch) | |
tree | 3b145e5bb19b42e6b7d634618bcc6d8e1361f3a9 /clang/lib/StaticAnalyzer/Core/CheckerManager.cpp | |
parent | a40319b7f1640612dda14f1f4f46bed913299775 (diff) | |
download | bcm5719-llvm-710f6b1259fb9f13cfa34b3d093d6130b0fb8b3a.tar.gz bcm5719-llvm-710f6b1259fb9f13cfa34b3d093d6130b0fb8b3a.zip |
[analyzer] Be more careful when downcasting for devirtualization.
Virtual base regions are never layered, so simply stripping them off won't
necessarily get you to the correct casted class. Instead, what we want is
the same logic for evaluating dynamic_cast: strip off base regions if possible,
but add new base regions if necessary.
llvm-svn: 161808
Diffstat (limited to 'clang/lib/StaticAnalyzer/Core/CheckerManager.cpp')
0 files changed, 0 insertions, 0 deletions