]> granicus.if.org Git - clang/commitdiff
More tests for DR1.
authorRichard Smith <richard-llvm@metafoo.co.uk>
Tue, 1 Apr 2014 18:32:16 +0000 (18:32 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Tue, 1 Apr 2014 18:32:16 +0000 (18:32 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@205339 91177308-0d34-0410-b5e6-96231b3b80d8

test/CXX/drs/dr0xx.cpp

index 001549164b9b1875ee56f5b017b770ef8427a799..29e1720b1bbf07e26f6f69483107c5c829373176 100644 (file)
@@ -4,7 +4,7 @@
 
 namespace dr1 { // dr1: no
   namespace X { extern "C" void dr1_f(int a = 1); }
-  namespace Y { extern "C" void dr1_f(int a = 2); }
+  namespace Y { extern "C" void dr1_f(int a = 1); }
   using X::dr1_f; using Y::dr1_f;
   void g() {
     dr1_f(0);
@@ -25,7 +25,23 @@ namespace dr1 { // dr1: no
   }
   void X::z(int = 1) {} // expected-note {{previous}}
   namespace X {
-    void z(int = 2); // expected-error {{redefinition of default argument}}
+    void z(int = 1); // expected-error {{redefinition of default argument}}
+  }
+
+  void i(int = 1);
+  void j() {
+    void i(int = 1);
+    using dr1::i;
+    i(0);
+    // FIXME: This should be rejected, due to the ambiguous default argument.
+    i();
+  }
+  void k() {
+    using dr1::i;
+    void i(int = 1);
+    i(0);
+    // FIXME: This should be rejected, due to the ambiguous default argument.
+    i();
   }
 }