HomePhabricator

[analyzer] Track multiple raw pointer symbols in DanglingInternalBufferChecker.

Authored by rnkovacs on Jul 11 2018, 12:08 PM.

Description

[analyzer] Track multiple raw pointer symbols in DanglingInternalBufferChecker.

Previously, the checker only tracked one raw pointer symbol for each
container object. But member functions returning a pointer to the
object's inner buffer may be called on the object several times. These
pointer symbols are now collected in a set inside the program state map
and thus all of them is checked for use-after-free problems.

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

llvm-svn: 336835