[cfe-commits] r103259 - in /cfe/trunk: lib/Sema/SemaOverload.cpp test/SemaTemplate/instantiate-complete.cpp

Douglas Gregor dgregor at apple.com
Fri May 7 08:55:52 PDT 2010


Author: dgregor
Date: Fri May  7 10:55:52 2010
New Revision: 103259

URL: http://llvm.org/viewvc/llvm-project?rev=103259&view=rev
Log:
Revert r103220. It seems to be breaking self-host

Modified:
    cfe/trunk/lib/Sema/SemaOverload.cpp
    cfe/trunk/test/SemaTemplate/instantiate-complete.cpp

Modified: cfe/trunk/lib/Sema/SemaOverload.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaOverload.cpp?rev=103259&r1=103258&r2=103259&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaOverload.cpp (original)
+++ cfe/trunk/lib/Sema/SemaOverload.cpp Fri May  7 10:55:52 2010
@@ -2289,7 +2289,8 @@
   //   T1 is a base class of T2.
   if (UnqualT1 == UnqualT2)
     DerivedToBase = false;
-  else if (!RequireCompleteType(Loc, OrigT2, PDiag()) &&
+  else if (!RequireCompleteType(Loc, OrigT1, PDiag()) &&
+           !RequireCompleteType(Loc, OrigT2, PDiag()) &&
            IsDerivedFrom(UnqualT2, UnqualT1))
     DerivedToBase = true;
   else

Modified: cfe/trunk/test/SemaTemplate/instantiate-complete.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaTemplate/instantiate-complete.cpp?rev=103259&r1=103258&r2=103259&view=diff
==============================================================================
--- cfe/trunk/test/SemaTemplate/instantiate-complete.cpp (original)
+++ cfe/trunk/test/SemaTemplate/instantiate-complete.cpp Fri May  7 10:55:52 2010
@@ -99,23 +99,3 @@
 
   template void f(int);
 }
-
-namespace PR7080 {
-  template <class T, class U>
-  class X
-  {
-    typedef char true_t;
-    class false_t { char dummy[2]; };
-    static true_t dispatch(U);
-    static false_t dispatch(...);
-    static T trigger();
-  public:
-    enum { value = sizeof(dispatch(trigger())) == sizeof(true_t) };
-  };
-
-  template <class T>
-  class rv : public T
-  { };
-
-  bool x = X<int, rv<int>&>::value;
-}





More information about the cfe-commits mailing list