diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/CXX/LandingPad.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/CXX/LandingPad.cpp b/test/CXX/LandingPad.cpp new file mode 100644 index 00000000..1b0c0f30 --- /dev/null +++ b/test/CXX/LandingPad.cpp @@ -0,0 +1,19 @@ +// RUN: %llvmgxx %s -emit-llvm -c -o %t1.bc +// RUN: rm -rf %t.klee-out +// RUN: klee --output-dir=%t.klee-out %t1.bc 2>&1 | FileCheck %s + +// CHECK: Using zero size array fix for landingpad instruction filter + +// Check that the zero size array in the landing pad filter does not crash KLEE +int p() throw() { throw 'a'; } +int main(int argc, char **) { + if (argc < 3) { + return 0; + } + + try { + return p(); + } catch (...) { + return 1; + } +} |