]> granicus.if.org Git - clang/commitdiff
Organize testcase into namespaces.
authorJohn McCall <rjmccall@apple.com>
Fri, 8 Jan 2010 18:40:32 +0000 (18:40 +0000)
committerJohn McCall <rjmccall@apple.com>
Fri, 8 Jan 2010 18:40:32 +0000 (18:40 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@93015 91177308-0d34-0410-b5e6-96231b3b80d8

test/SemaCXX/ambig-user-defined-conversions.cpp

index 0820bc93c39f96133092b7270504279b647bcd78..8ac822fc08c8714374ff5dd78707e3bab37a9373 100644 (file)
@@ -1,52 +1,51 @@
 // RUN: %clang_cc1 -fsyntax-only -verify %s
 
-// Test1
-struct BASE { 
-  operator int &(); // expected-note {{candidate function}}
-}; 
-struct BASE1 { 
-  operator int &(); // expected-note {{candidate function}}
-}; 
-
-struct B : public BASE, BASE1 { 
-
-}; 
-
-extern B f(); 
-
-B b1;
-void func(const int ci, const char cc); // expected-note {{candidate function}}
-void func(const char ci, const B b); // expected-note {{candidate function}}
-void func(const B b, const int ci); // expected-note {{candidate function}}
-
-const int Test1() {
-  func(b1, f()); // expected-error {{call to 'func' is ambiguous}}
-  return f(); // expected-error {{conversion from 'struct B' to 'int const' is ambiguous}}
+namespace test0 {
+  struct BASE { 
+    operator int &(); // expected-note {{candidate function}}
+  }; 
+  struct BASE1 { 
+    operator int &(); // expected-note {{candidate function}}
+  }; 
+
+  struct B : public BASE, BASE1 {};
+
+  extern B f(); 
+  B b1;
+
+  void func(const int ci, const char cc); // expected-note {{candidate function}}
+  void func(const char ci, const B b); // expected-note {{candidate function}}
+  void func(const B b, const int ci); // expected-note {{candidate function}}
+
+  const int Test1() {
+    func(b1, f()); // expected-error {{call to 'func' is ambiguous}}
+    return f(); // expected-error {{conversion from 'struct test0::B' to 'int const' is ambiguous}}
+  }
 }
 
-
-// Test2
-struct E;
-struct A { 
-  A (E&); 
-};
-
-struct E { 
-  operator A (); 
-};
-
-struct C { 
-  C (E&);  
-};
-
-void f1(A);    // expected-note {{candidate function}}
-void f1(C);    // expected-note {{candidate function}}
-
-void Test2()
-{
-       E b;
-       f1(b);  // expected-error {{call to 'f1' is ambiguous}} 
-                // ambiguous because b -> C via constructor and
-                // b → A via constructor or conversion function.
+namespace test1 {
+  struct E;
+  struct A { 
+    A (E&); 
+  };
+
+  struct E { 
+    operator A (); 
+  };
+
+  struct C { 
+    C (E&);  
+  };
+
+  void f1(A);  // expected-note {{candidate function}}
+  void f1(C);  // expected-note {{candidate function}}
+
+  void Test2()
+  {
+    E b;
+    f1(b);  // expected-error {{call to 'f1' is ambiguous}}    
+            // ambiguous because b -> C via constructor and
+            // b → A via constructor or conversion function.
+  }
 }