From 99fdf8d418da846a7d36a46482a3d0cdec92586b Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Sun, 6 May 2012 00:04:32 +0000 Subject: A conversion operator in a base class shouldn't hide another conversion operator in the same class, even if they convert to the same type. Fixes PR12712. llvm-svn: 156247 --- clang/test/SemaCXX/conversion-function.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'clang/test/SemaCXX/conversion-function.cpp') diff --git a/clang/test/SemaCXX/conversion-function.cpp b/clang/test/SemaCXX/conversion-function.cpp index a7a178244c8..6fca0503ba7 100644 --- a/clang/test/SemaCXX/conversion-function.cpp +++ b/clang/test/SemaCXX/conversion-function.cpp @@ -392,3 +392,14 @@ namespace PR8800 { A& a4 = (A&)c; } } + +namespace PR12712 { + struct A {}; + struct B { + operator A(); + operator A() const; + }; + struct C : B {}; + + A f(const C c) { return c; } +} -- cgit v1.2.3