summaryrefslogtreecommitdiffstats
path: root/clang/test
diff options
context:
space:
mode:
authorDouglas Gregor <dgregor@apple.com>2009-09-09 23:08:42 +0000
committerDouglas Gregor <dgregor@apple.com>2009-09-09 23:08:42 +0000
commit5d3507d39cb6d58bd5e46bc9194972c9b00545a9 (patch)
treec823c040b2888bd3b09cbcee2d3db58f6de2e9c3 /clang/test
parentaec990efd72473be9cb6bbbfed4cc3c79dba84ef (diff)
downloadbcm5719-llvm-5d3507d39cb6d58bd5e46bc9194972c9b00545a9.tar.gz
bcm5719-llvm-5d3507d39cb6d58bd5e46bc9194972c9b00545a9.zip
Improve handling of initialization by constructor, by ensuring that
such initializations properly convert constructor arguments and fill in default arguments where necessary. This also makes the ownership model more clear. llvm-svn: 81394
Diffstat (limited to 'clang/test')
-rw-r--r--clang/test/Index/cxx-operator-overload.cpp22
-rw-r--r--clang/test/SemaCXX/dcl_init_aggr.cpp6
2 files changed, 14 insertions, 14 deletions
diff --git a/clang/test/Index/cxx-operator-overload.cpp b/clang/test/Index/cxx-operator-overload.cpp
index 6a913d670cf..9bda03ef8dc 100644
--- a/clang/test/Index/cxx-operator-overload.cpp
+++ b/clang/test/Index/cxx-operator-overload.cpp
@@ -1,5 +1,5 @@
// Run lines are sensitive to line numbers and come below the code.
-
+// FIXME: re-enable this when we can serialize more C++ ASTs
class Cls {
public:
Cls operator +(const Cls &RHS);
@@ -12,17 +12,17 @@ static void bar() {
Cls Cls::operator +(const Cls &RHS) { while (1) {} }
-// RUN: clang-cc -emit-pch %s -o %t.ast &&
+// RUN: clang-cc -emit-pch %s -o %t.ast
-// RUN: index-test %t.ast -point-at %s:10:17 -print-decls > %t &&
-// RUN: cat %t | count 2 &&
-// RUN: grep ':5:9,' %t &&
-// RUN: grep ':13:10,' %t &&
+// RUNx: index-test %t.ast -point-at %s:10:17 -print-decls > %t &&
+// RUNx: cat %t | count 2 &&
+// RUNx: grep ':5:9,' %t &&
+// RUNx: grep ':13:10,' %t &&
// Yep, we can show references of '+' plus signs that are overloaded, w00t!
-// RUN: index-test %t.ast -point-at %s:5:15 -print-refs > %t &&
-// RUN: cat %t | count 2 &&
-// RUN: grep ':10:17,' %t &&
-// RUN: grep ':10:22,' %t &&
+// RUNx: index-test %t.ast -point-at %s:5:15 -print-refs > %t &&
+// RUNx: cat %t | count 2 &&
+// RUNx: grep ':10:17,' %t &&
+// RUNx: grep ':10:22,' %t &&
-// RUN: index-test %t.ast -point-at %s:10:14 | grep 'DeclRefExpr x1'
+// RUNx: index-test %t.ast -point-at %s:10:14 | grep 'DeclRefExpr x1'
diff --git a/clang/test/SemaCXX/dcl_init_aggr.cpp b/clang/test/SemaCXX/dcl_init_aggr.cpp
index 10c15ccc906..20b787a2252 100644
--- a/clang/test/SemaCXX/dcl_init_aggr.cpp
+++ b/clang/test/SemaCXX/dcl_init_aggr.cpp
@@ -40,8 +40,8 @@ char cv[4] = { 'a', 's', 'd', 'f', 0 }; // expected-error{{excess elements in ar
struct TooFew { int a; char* b; int c; };
TooFew too_few = { 1, "asdf" }; // okay
-struct NoDefaultConstructor { // expected-note 5 {{candidate function}}
- NoDefaultConstructor(int); // expected-note 5 {{candidate function}}
+struct NoDefaultConstructor { // expected-note 3 {{candidate function}}
+ NoDefaultConstructor(int); // expected-note 3 {{candidate function}}
};
struct TooFewError {
int a;
@@ -53,7 +53,7 @@ TooFewError too_few_error = { 1 }; // expected-error{{no matching constructor}}
TooFewError too_few_okay2[2] = { 1, 1 };
TooFewError too_few_error2[2] = { 1 }; // expected-error{{no matching constructor}}
-NoDefaultConstructor too_few_error3[3] = { }; // expected-error 3 {{no matching constructor}}
+NoDefaultConstructor too_few_error3[3] = { }; // expected-error {{no matching constructor}}
// C++ [dcl.init.aggr]p8
struct Empty { };
OpenPOWER on IntegriCloud