Author: Balázs Kéri
Date: 2022-04-07T11:07:15+02:00
New Revision: 5479174071ec7d4692959bbdc15b5bb79e268e00

URL: 
https://github.com/llvm/llvm-project/commit/5479174071ec7d4692959bbdc15b5bb79e268e00
DIFF: 
https://github.com/llvm/llvm-project/commit/5479174071ec7d4692959bbdc15b5bb79e268e00.diff

LOG: [clang][ASTImporter] Not using consumeError at failed import of in-class 
initializer.

The error can be returned from the function, the problem written in comment 
before
does not exist. The same is done already in ASTImporter at various import 
failures.

After a declaration is created in an `ASTNodeImporter` import function
with `GetImportedOrCreateDecl`, that function registers it with
`MapImported`. At many places import errors can happen after this
and the error is returned. The same can be done in the place where
the in-class initializer is imported.

Reviewed By: martong

Differential Revision: https://reviews.llvm.org/D122528

Added: 
    

Modified: 
    clang/lib/AST/ASTImporter.cpp

Removed: 
    


################################################################################
diff  --git a/clang/lib/AST/ASTImporter.cpp b/clang/lib/AST/ASTImporter.cpp
index 5661e55b5505d..e3b3deff7c5c9 100644
--- a/clang/lib/AST/ASTImporter.cpp
+++ b/clang/lib/AST/ASTImporter.cpp
@@ -3658,11 +3658,7 @@ ExpectedDecl ASTNodeImporter::VisitFieldDecl(FieldDecl 
*D) {
             if (!FoundField->getInClassInitializer())
               FoundField->setInClassInitializer(*ToInitializerOrErr);
           } else {
-            // We can't return error here,
-            // since we already mapped D as imported.
-            // FIXME: warning message?
-            consumeError(ToInitializerOrErr.takeError());
-            return FoundField;
+              return ToInitializerOrErr.takeError();
           }
         }
         return FoundField;


        
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to