Author: rsmith
Date: Tue May 15 00:39:53 2012
New Revision: 156805

URL: http://llvm.org/viewvc/llvm-project?rev=156805&view=rev
Log:
Test file I forgot to 'svn add' in r156802.

Added:
    cfe/trunk/test/CXX/dcl.decl/dcl.meaning/dcl.fct/dcl.fct.def.default/p1.cpp

Added: 
cfe/trunk/test/CXX/dcl.decl/dcl.meaning/dcl.fct/dcl.fct.def.default/p1.cpp
URL: 
http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CXX/dcl.decl/dcl.meaning/dcl.fct/dcl.fct.def.default/p1.cpp?rev=156805&view=auto
==============================================================================
--- cfe/trunk/test/CXX/dcl.decl/dcl.meaning/dcl.fct/dcl.fct.def.default/p1.cpp 
(added)
+++ cfe/trunk/test/CXX/dcl.decl/dcl.meaning/dcl.fct/dcl.fct.def.default/p1.cpp 
Tue May 15 00:39:53 2012
@@ -0,0 +1,14 @@
+// RUN: %clang_cc1 -std=c++11 -verify %s
+
+// A function that is explicitly defaulted shall
+// [...]
+//   -- not have default arguments
+struct DefArg {
+  DefArg(int n = 5) = default; // expected-error {{an explicitly-defaulted 
constructor cannot have default arguments}}
+  DefArg(const DefArg &DA = DefArg(2)) = default; // expected-error {{an 
explicitly-defaulted constructor cannot have default arguments}}
+  DefArg(const DefArg &DA, int k = 3) = default; // expected-error {{an 
explicitly-defaulted copy constructor cannot have default arguments}}
+  DefArg(DefArg &&DA, int k = 3) = default; // expected-error {{an 
explicitly-defaulted move constructor cannot have default arguments}}
+  DefArg &operator=(const DefArg&, int k = 4) = default; // expected-error 
{{parameter of overloaded 'operator=' cannot have a default argument}}
+  DefArg &operator=(DefArg&&, int k = 4) = default; // expected-error 
{{parameter of overloaded 'operator=' cannot have a default argument}}
+  ~DefArg(int k = 5) = default; // expected-error {{destructor cannot have any 
parameters}}
+};


_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to