[PATCH] D65627: [clang-doc] Add flag to continue after mapping errors

Diego Astiazarán via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Aug 2 14:23:17 PDT 2019


DiegoAstiazaran updated this revision to Diff 213126.
DiegoAstiazaran retitled this revision from "[clang-doc] Continue after mapping error" to "[clang-doc] Add flag to continue after mapping errors".
DiegoAstiazaran edited the summary of this revision.
DiegoAstiazaran added a comment.

A flag has been added to decide if the tool should continue after an error occurs in the mapping phase.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D65627/new/

https://reviews.llvm.org/D65627

Files:
  clang-tools-extra/clang-doc/tool/ClangDocMain.cpp


Index: clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
===================================================================
--- clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
+++ clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
@@ -48,6 +48,11 @@
 static llvm::cl::extrahelp CommonHelp(CommonOptionsParser::HelpMessage);
 static llvm::cl::OptionCategory ClangDocCategory("clang-doc options");
 
+static llvm::cl::opt<bool> IgnoreMappingFailures(
+    "ignore-map-errors",
+    llvm::cl::desc("Continue if files are not mapped correctly."),
+    llvm::cl::init(true), llvm::cl::cat(ClangDocCategory));
+
 static llvm::cl::opt<std::string>
     OutDirectory("output",
                  llvm::cl::desc("Directory for outputting generated files."),
@@ -229,8 +234,14 @@
   auto Err =
       Exec->get()->execute(doc::newMapperActionFactory(CDCtx), ArgAdjuster);
   if (Err) {
-    llvm::errs() << toString(std::move(Err)) << "\n";
-    return 1;
+    if (IgnoreMappingFailures)
+      llvm::errs() << "Error mapping decls in files. Clang-doc will ignore "
+                      "these files and continue:\n"
+                   << toString(std::move(Err)) << "\n";
+    else {
+      llvm::errs() << toString(std::move(Err)) << "\n";
+      return 1;
+    }
   }
 
   // Collect values into output by key.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D65627.213126.patch
Type: text/x-patch
Size: 1308 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20190802/8a6383ae/attachment.bin>


More information about the cfe-commits mailing list