diff options
Diffstat (limited to 'clang/test/SemaCXX/local-classes.cpp')
-rw-r--r-- | clang/test/SemaCXX/local-classes.cpp | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/clang/test/SemaCXX/local-classes.cpp b/clang/test/SemaCXX/local-classes.cpp new file mode 100644 index 0000000..500b219 --- /dev/null +++ b/clang/test/SemaCXX/local-classes.cpp @@ -0,0 +1,41 @@ +// RUN: %clang_cc1 -fsyntax-only -verify %s + +namespace PR6382 { + int foo() + { + goto error; + { + struct BitPacker { + BitPacker() {} + }; + BitPacker packer; + } + + error: + return -1; + } +} + +namespace PR6383 { + void test (bool gross) + { + struct compare_and_set + { + void operator() (const bool inner, const bool gross = false) + { + // the code + } + } compare_and_set2; + + compare_and_set2 (false, gross); + } +} + +namespace Templates { + template<int Value> + void f() { + struct Inner { + static int getValue() { return Value; } + }; + } +} |