eb41640fb417e25eb3218c2662a0dd512cdab04a |
|
22-May-2013 |
Jordan Rose <jordan_rose@apple.com> |
[analyzer] Don't crash if a block doesn't have a type signature. Currently, blocks instantiated in templates lose their "signature as written"; it's not clear if this is intentional. Change the analyzer's use of BlockDecl::getSignatureAsWritten to check whether or not the signature is actually there. <rdar://problem/13954714> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@182497 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/templates.cpp
|
81fb50e8b120fc95dc0245b4112972d4d7cca3b5 |
|
10-Sep-2012 |
Jordan Rose <jordan_rose@apple.com> |
[analyzer] For now, don't inline C++ standard library functions. This is a (heavy-handed) solution to PR13724 -- until we know we can do a good job inlining the STL, it's best to be consistent and not generate more false positives than we did before. We can selectively whitelist certain parts of the 'std' namespace that are known to be safe. This is controlled by analyzer config option 'c++-stdlib-inlining', which can be set to "true" or "false". This commit also adds control for whether or not to inline any templated functions (member or non-member), under the config option 'c++-template-inlining'. This option is currently on by default. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@163548 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/templates.cpp
|
69a0e5021c5c49a34aa25cd89b1e613a52097e65 |
|
27-Jul-2012 |
Jordan Rose <jordan_rose@apple.com> |
[analyzer] Look through SubstNonTypeTemplateParmExprs. We were treating this like a CXXDefaultArgExpr, but SubstNonTypeTemplateParmExpr actually appears when a template is instantiated, i.e. we have all the information necessary to evaluate it. This allows us to inline functions like llvm::array_lengthof. <rdar://problem/11949235> git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160846 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/templates.cpp
|
45246a7fc00f07bba9a34a3f13c0af72a05f95be |
|
15-May-2012 |
Anna Zaks <ganna@apple.com> |
[analyzer] Fix a crash in templated code which uses blocks. We should investigate why signature info is not set in this case. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@156784 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Analysis/templates.cpp
|