[clang] 7261991 - [clang-rename] Exit gracefully when no input provided

Shivam Gupta via cfe-commits cfe-commits at lists.llvm.org
Sun Apr 16 21:55:03 PDT 2023


Author: Shivam Gupta
Date: 2023-04-17T10:23:53+05:30
New Revision: 726199146a0bb53315ade042e759c65e6d96d556

URL: https://github.com/llvm/llvm-project/commit/726199146a0bb53315ade042e759c65e6d96d556
DIFF: https://github.com/llvm/llvm-project/commit/726199146a0bb53315ade042e759c65e6d96d556.diff

LOG: [clang-rename] Exit gracefully when no input provided

clang-rename on a non existing file segfaults

Command to run -
$ clang-rename -offset=0 -new-name=plop asdasd

Error while processing llvm-project/asdasd.
clang-rename: llvm-project/llvm/include/llvm/Support/ErrorOr.h:237:
llvm::ErrorOr<T>::storage_type* llvm::ErrorOr<T>::getStorage()
[with T = const clang::FileEntry*; llvm::ErrorOr<T>::storage_type = const clang::FileEntry*]:
Assertion `!HasError && "Cannot get value when an error exists!"' failed.

[1]    827497 IOT instruction  clang-rename -offset=0 -new-name=plop asdasd

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

Added: 
    

Modified: 
    clang/tools/clang-rename/ClangRename.cpp

Removed: 
    


################################################################################
diff  --git a/clang/tools/clang-rename/ClangRename.cpp b/clang/tools/clang-rename/ClangRename.cpp
index e7ceac7dbf30..7ba1978f0774 100644
--- a/clang/tools/clang-rename/ClangRename.cpp
+++ b/clang/tools/clang-rename/ClangRename.cpp
@@ -126,6 +126,9 @@ int main(int argc, const char **argv) {
         SymbolOffsets.push_back(Info.Offset);
       NewNames.push_back(Info.NewName);
     }
+  } else {
+    errs() << "clang-rename: input must be provided.\n";
+    return 1;
   }
 
   // Check the arguments for correctness.


        


More information about the cfe-commits mailing list