From: Daniel Dunbar Date: Mon, 15 Jun 2009 15:56:08 +0000 (+0000) Subject: Test for [basic.lookup.unqual]p3 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=cbeedfaf2d8779bfa9a91c0f923c60b8a12627f4;p=clang Test for [basic.lookup.unqual]p3 - 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 --- 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 index 0000000000..1daf0ddec6 --- /dev/null +++ b/test/CXX/basic/basic.lookup/basic.lookup.unqual/p3.cpp @@ -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); + } + }; +}