diff options
author | Anna Zaks <ganna@apple.com> | 2012-02-01 19:16:20 +0000 |
---|---|---|
committer | Anna Zaks <ganna@apple.com> | 2012-02-01 19:16:20 +0000 |
commit | 7aba6368faf3de1e2f83223469bdb9464103ef72 (patch) | |
tree | 8bafcc68df2fd88fdd1e152c3e69c3242f84d59c /clang/test/Analysis/cstring-syntax-cxx.cpp | |
parent | 314cd09b5c79fcf2173e5650f4a470af673844f8 (diff) | |
download | llvm-7aba6368faf3de1e2f83223469bdb9464103ef72.zip llvm-7aba6368faf3de1e2f83223469bdb9464103ef72.tar.gz llvm-7aba6368faf3de1e2f83223469bdb9464103ef72.tar.bz2 |
[analyzer] Fix a crash in CheckerContext::isCLibraryFunction for C++
declarations with special names.
A patch by Dmitri Gribenko.
llvm-svn: 149525
Diffstat (limited to 'clang/test/Analysis/cstring-syntax-cxx.cpp')
-rw-r--r-- | clang/test/Analysis/cstring-syntax-cxx.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/clang/test/Analysis/cstring-syntax-cxx.cpp b/clang/test/Analysis/cstring-syntax-cxx.cpp new file mode 100644 index 0000000..af8b4d78 --- /dev/null +++ b/clang/test/Analysis/cstring-syntax-cxx.cpp @@ -0,0 +1,16 @@ +// RUN: %clang_cc1 -analyze -analyzer-checker=experimental.unix.cstring.BadSizeArg -analyzer-store=region -verify %s + +// Ensure we don't crash on C++ declarations with special names. +struct X { + X(int i): i(i) {} + int i; +}; + +X operator+(X a, X b) { + return X(a.i + b.i); +} + +void test(X a, X b) { + X c = a + b; +} + |