[clang] 4b454af - Convert unreachable return statement into llvm_unreachable (#129627)

via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 5 16:59:47 PST 2025


Author: Shafik Yaghmour
Date: 2025-03-05T16:59:44-08:00
New Revision: 4b454afc45cdd69ad7d8d6bdba785b00bda7808c

URL: https://github.com/llvm/llvm-project/commit/4b454afc45cdd69ad7d8d6bdba785b00bda7808c
DIFF: https://github.com/llvm/llvm-project/commit/4b454afc45cdd69ad7d8d6bdba785b00bda7808c.diff

LOG: Convert unreachable return statement into llvm_unreachable (#129627)

Static analysis flags the final return statement in `ReadExtensionBlock`
as unreachable and indeed it is since there is no way to exit the
`while(true)` loop besides a *return statement*.

So I am converting it into a `llvm_unreachable` to explicitly document
this.

Added: 
    

Modified: 
    clang/lib/Serialization/ASTReader.cpp

Removed: 
    


################################################################################
diff  --git a/clang/lib/Serialization/ASTReader.cpp b/clang/lib/Serialization/ASTReader.cpp
index ea4b233a6c573..ca09c3d79d941 100644
--- a/clang/lib/Serialization/ASTReader.cpp
+++ b/clang/lib/Serialization/ASTReader.cpp
@@ -5329,7 +5329,7 @@ llvm::Error ASTReader::ReadExtensionBlock(ModuleFile &F) {
     }
   }
 
-  return llvm::Error::success();
+  llvm_unreachable("ReadExtensionBlock should return from while loop");
 }
 
 void ASTReader::InitializeContext() {


        


More information about the cfe-commits mailing list