diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2014-02-25 18:03:55 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2014-02-25 18:03:55 +0000 |
commit | 00e8a1915a258bf02edae8a349a1d751362fe979 (patch) | |
tree | db582f07657d16c2583788fd2f43d3d97f50854e /clang/test/SemaCXX/ast-print.cpp | |
parent | 8e38871865530e38c1a9740443a73ac07957e7dc (diff) | |
download | bcm5719-llvm-00e8a1915a258bf02edae8a349a1d751362fe979.tar.gz bcm5719-llvm-00e8a1915a258bf02edae8a349a1d751362fe979.zip |
Reapply "Pretty Printer: Fix printing of conversion operator decls and calls."
There were many additional tests that had the bad behavior baked in.
llvm-svn: 202174
Diffstat (limited to 'clang/test/SemaCXX/ast-print.cpp')
-rw-r--r-- | clang/test/SemaCXX/ast-print.cpp | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/clang/test/SemaCXX/ast-print.cpp b/clang/test/SemaCXX/ast-print.cpp index 977ba7afa4d..3d98fd8ef3a 100644 --- a/clang/test/SemaCXX/ast-print.cpp +++ b/clang/test/SemaCXX/ast-print.cpp @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -ast-print %s | FileCheck %s +// RUN: %clang_cc1 -ast-print %s -std=gnu++11 | FileCheck %s // CHECK: r; // CHECK-NEXT: (r->method()); @@ -173,3 +173,26 @@ void test14() { float test15() { return __builtin_asinf(1.0F); } + +namespace PR18776 { +struct A { + operator void *(); + explicit operator bool(); + A operator&(A); +}; + +// CHECK: struct A +// CHECK-NEXT: {{^[ ]*operator}} void *(); +// CHECK-NEXT: {{^[ ]*explicit}} operator bool(); + +void bar(void *); + +void foo() { + A a, b; + bar(a & b); +// CHECK: bar(a & b); + if (a & b) +// CHECK: if (a & b) + return; +} +}; |