summaryrefslogtreecommitdiffstats
path: root/clang/test/Analysis/pointer-to-member.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [analyzer] Pointers-to-members are (currently) Locs, not NonLocs.Jordan Rose2013-07-021-0/+1
| | | | | | | | | | While we don't model pointers-to-members besides "null" and "non-null", we were using Loc symbols for valid pointers and NonLoc integers for the null case. This hit the assert committed in r185401. Fixed by using a true (Loc) null for null member pointers. llvm-svn: 185444
* [analyzer] Don't assert on a temporary of pointer-to-member type.Jordan Rose2013-04-151-0/+37
| | | | | | | | | | While we don't do anything intelligent with pointers-to-members today, it's perfectly legal to need a temporary of pointer-to-member type to, say, pass by const reference. Tweak an assertion to allow this. PR15742 and PR15747 llvm-svn: 179563
* [analyzer] Replace "-analyzer-ipa" with "-analyzer-config ipa".Anna Zaks2013-01-241-1/+1
| | | | | | | | | The idea is to eventually place all analyzer options under "analyzer-config". In addition, this lays the ground for introduction of a high-level analyzer mode option, which will influence the default setting for IPAMode. llvm-svn: 173385
* [analyzer] For now, treat pointers-to-members as non-null void * symbols.Jordan Rose2012-08-231-0/+44
Until we have full support for pointers-to-members, we can at least approximate some of their use by tracking null and non-null values. We thus treat &A::m_ptr as a non-null void * symbol, and MemberPointer(0) as a pointer-sized null constant. This enables support for what is sometimes called the "safe bool" idiom, demonstrated in the test case. llvm-svn: 162495
OpenPOWER on IntegriCloud