[cfe-commits] r132664 - in /cfe/trunk: include/clang/Sema/Initialization.h lib/Sema/SemaCXXCast.cpp lib/Sema/SemaDeclCXX.cpp lib/Sema/SemaExprCXX.cpp lib/Sema/SemaInit.cpp lib/Sema/SemaStmt.cpp

Sebastian Redl sebastian.redl at getdesigned.at
Sun Jun 5 05:23:29 PDT 2011


Author: cornedbee
Date: Sun Jun  5 07:23:28 2011
New Revision: 132664

URL: http://llvm.org/viewvc/llvm-project?rev=132664&view=rev
Log:
Remove all references to InitializationSequence::FailedSequence from outside SemaInit.cpp. Replace them with the boolean conversion or the new Failed() function. This is a first step towards removing InitializationSequence::SequenceKind. No functionality change.

Modified:
    cfe/trunk/include/clang/Sema/Initialization.h
    cfe/trunk/lib/Sema/SemaCXXCast.cpp
    cfe/trunk/lib/Sema/SemaDeclCXX.cpp
    cfe/trunk/lib/Sema/SemaExprCXX.cpp
    cfe/trunk/lib/Sema/SemaInit.cpp
    cfe/trunk/lib/Sema/SemaStmt.cpp

Modified: cfe/trunk/include/clang/Sema/Initialization.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/Initialization.h?rev=132664&r1=132663&r2=132664&view=diff
==============================================================================
--- cfe/trunk/include/clang/Sema/Initialization.h (original)
+++ cfe/trunk/include/clang/Sema/Initialization.h Sun Jun  5 07:23:28 2011
@@ -699,6 +699,9 @@
   
   /// \brief Determine whether the initialization sequence is valid.
   operator bool() const { return SequenceKind != FailedSequence; }
+
+  /// \brief Determine whether the initialization sequence is invalid.
+  bool Failed() const { return SequenceKind == FailedSequence; }
   
   typedef llvm::SmallVector<Step, 4>::const_iterator step_iterator;
   step_iterator step_begin() const { return Steps.begin(); }

Modified: cfe/trunk/lib/Sema/SemaCXXCast.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaCXXCast.cpp?rev=132664&r1=132663&r2=132664&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaCXXCast.cpp (original)
+++ cfe/trunk/lib/Sema/SemaCXXCast.cpp Sun Jun  5 07:23:28 2011
@@ -252,8 +252,7 @@
                                      (CT == CT_CStyle || CT == CT_Functional));
   InitializationSequence sequence(S, entity, initKind, &src, 1);
 
-  assert(sequence.getKind() == InitializationSequence::FailedSequence &&
-         "initialization succeeded on second try?");
+  assert(sequence.Failed() && "initialization succeeded on second try?");
   switch (sequence.getFailureKind()) {
   default: return false;
 
@@ -1195,8 +1194,7 @@
   // On the other hand, if we're checking a C-style cast, we've still got
   // the reinterpret_cast way.
   
-  if (InitSeq.getKind() == InitializationSequence::FailedSequence && 
-    (CStyle || !DestType->isReferenceType()))
+  if (InitSeq.Failed() && (CStyle || !DestType->isReferenceType()))
     return TC_NotApplicable;
     
   ExprResult Result

Modified: cfe/trunk/lib/Sema/SemaDeclCXX.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaDeclCXX.cpp?rev=132664&r1=132663&r2=132664&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaDeclCXX.cpp (original)
+++ cfe/trunk/lib/Sema/SemaDeclCXX.cpp Sun Jun  5 07:23:28 2011
@@ -3350,7 +3350,7 @@
 
     InitializationSequence InitSeq(*this, BaseEntity, Kind, 0, 0);
 
-    if (InitSeq.getKind() == InitializationSequence::FailedSequence)
+    if (InitSeq.Failed())
       return true;
   }
 
@@ -3380,7 +3380,7 @@
 
     InitializationSequence InitSeq(*this, BaseEntity, Kind, 0, 0);
 
-    if (InitSeq.getKind() == InitializationSequence::FailedSequence)
+    if (InitSeq.Failed())
       return true;
   }
 
@@ -3462,7 +3462,7 @@
     
     InitializationSequence InitSeq(*this, MemberEntity, Kind, 0, 0);
 
-    if (InitSeq.getKind() == InitializationSequence::FailedSequence)
+    if (InitSeq.Failed())
       return true;
   }
 
@@ -3537,7 +3537,7 @@
 
     InitializationSequence InitSeq(*this, BaseEntity, Kind, &Arg, 1);
 
-    if (InitSeq.getKind() == InitializationSequence::FailedSequence)
+    if (InitSeq.Failed())
       return true;
   }
 
@@ -3574,7 +3574,7 @@
 
     InitializationSequence InitSeq(*this, BaseEntity, Kind, &Arg, 1);
 
-    if (InitSeq.getKind() == InitializationSequence::FailedSequence)
+    if (InitSeq.Failed())
       return true;
   }
 
@@ -3651,7 +3651,7 @@
    
     InitializationSequence InitSeq(*this, Entities.back(), Kind, &Arg, 1);
 
-    if (InitSeq.getKind() == InitializationSequence::FailedSequence)
+    if (InitSeq.Failed())
       return true;
   }
 

Modified: cfe/trunk/lib/Sema/SemaExprCXX.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaExprCXX.cpp?rev=132664&r1=132663&r2=132664&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaExprCXX.cpp (original)
+++ cfe/trunk/lib/Sema/SemaExprCXX.cpp Sun Jun  5 07:23:28 2011
@@ -2889,7 +2889,7 @@
     Sema::SFINAETrap SFINAE(Self, /*AccessCheckingSFINAE=*/true);
     Sema::ContextRAII TUContext(Self, Self.Context.getTranslationUnitDecl());
     InitializationSequence Init(Self, To, Kind, &FromPtr, 1);
-    if (Init.getKind() == InitializationSequence::FailedSequence)
+    if (Init.Failed())
       return false;
 
     ExprResult Result = Init.Perform(Self, To, Kind, MultiExprArg(&FromPtr, 1));
@@ -3250,7 +3250,7 @@
       if (TTy.isAtLeastAsQualifiedAs(FTy)) {
         InitializedEntity Entity = InitializedEntity::InitializeTemporary(TTy);
         InitializationSequence InitSeq(Self, Entity, Kind, &From, 1);
-        if (InitSeq.getKind() != InitializationSequence::FailedSequence) {
+        if (InitSeq) {
           HaveConversion = true;
           return false;
         }
@@ -3275,7 +3275,7 @@
 
   InitializedEntity Entity = InitializedEntity::InitializeTemporary(TTy);
   InitializationSequence InitSeq(Self, Entity, Kind, &From, 1);
-  HaveConversion = InitSeq.getKind() != InitializationSequence::FailedSequence;
+  HaveConversion = !InitSeq.Failed();
   ToType = TTy;
   if (InitSeq.isAmbiguous())
     return InitSeq.Diagnose(Self, Entity, Kind, &From, 1);

Modified: cfe/trunk/lib/Sema/SemaInit.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaInit.cpp?rev=132664&r1=132663&r2=132664&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaInit.cpp (original)
+++ cfe/trunk/lib/Sema/SemaInit.cpp Sun Jun  5 07:23:28 2011
@@ -4735,7 +4735,7 @@
   InitializationKind Kind = InitializationKind::CreateCopy(SourceLocation(),
                                                            SourceLocation());
   InitializationSequence Seq(*this, Entity, Kind, &InitE, 1);
-  return Seq.getKind() != InitializationSequence::FailedSequence;
+  return !Seq.Failed();
 }
 
 ExprResult

Modified: cfe/trunk/lib/Sema/SemaStmt.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaStmt.cpp?rev=132664&r1=132663&r2=132664&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/SemaStmt.cpp (original)
+++ cfe/trunk/lib/Sema/SemaStmt.cpp Sun Jun  5 07:23:28 2011
@@ -1531,12 +1531,11 @@
     //   parameter of the selected constructor is not an rvalue reference
     //   to the object's type (possibly cv-qualified), overload resolution
     //   is performed again, considering the object as an lvalue.
-    if (Seq.getKind() != InitializationSequence::FailedSequence) {
+    if (Seq) {
       for (InitializationSequence::step_iterator Step = Seq.step_begin(),
            StepEnd = Seq.step_end();
            Step != StepEnd; ++Step) {
-        if (Step->Kind
-            != InitializationSequence::SK_ConstructorInitialization)
+        if (Step->Kind != InitializationSequence::SK_ConstructorInitialization)
           continue;
 
         CXXConstructorDecl *Constructor





More information about the cfe-commits mailing list