]> granicus.if.org Git - clang/commitdiff
Test for [basic.lookup.unqual]p3
authorDaniel Dunbar <daniel@zuster.org>
Mon, 15 Jun 2009 15:56:08 +0000 (15:56 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Mon, 15 Jun 2009 15:56:08 +0000 (15:56 +0000)
 - Failing, at least in part, because lookup in parser is finding a friend
   function where it shouldn't.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@73388 91177308-0d34-0410-b5e6-96231b3b80d8

test/CXX/basic/basic.lookup/basic.lookup.unqual/p3.cpp [new file with mode: 0644]

diff --git a/test/CXX/basic/basic.lookup/basic.lookup.unqual/p3.cpp b/test/CXX/basic/basic.lookup/basic.lookup.unqual/p3.cpp
new file mode 100644 (file)
index 0000000..1daf0dd
--- /dev/null
@@ -0,0 +1,26 @@
+// RUN: clang-cc -fsyntax-only -verify %s
+// XFAIL
+
+// FIXME: This part is here to demonstrate the failure in looking up 'f', it can
+// be removed once the whole test passes.
+typedef int f; 
+namespace N0 {
+  struct A { 
+    friend void f(); 
+    void g() {
+      int i = f(1);
+    }
+  };
+}
+
+namespace N1 {
+  struct A { 
+    friend void f(A &);
+    operator int();
+    void g(A a) {
+      // ADL should not apply to the lookup of 'f', it refers to the typedef
+      // above.
+      int i = f(a);
+    }
+  };
+}