Actually, use an exception to stop verification. This gives us much better
authorChris Lattner <sabre@nondot.org>
Tue, 13 Jul 2004 08:48:04 +0000 (08:48 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 13 Jul 2004 08:48:04 +0000 (08:48 +0000)
error messages because verification stops at the first error.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14794 91177308-0d34-0410-b5e6-96231b3b80d8

tools/llvm-as/llvm-as.cpp

index 406f3e33399be2c58d6a1f3900304ecff8a72965..0f16db90940a6333601f84298c8e5dac4ba9e59e 100644 (file)
@@ -57,9 +57,13 @@ int main(int argc, char **argv) {
       return 1;
     }
 
-    if (!DisableVerify && verifyModule(*M.get(), PrintMessageAction)) {
+    try {
+      if (!DisableVerify)
+        verifyModule(*M.get(), ThrowExceptionAction);
+    } catch (const std::string &Err) {
       std::cerr << argv[0]
                 << ": assembly parsed, but does not verify as correct!\n";
+      std::cerr << Err;
       return 1;
     }