[llvm-commits] CVS: llvm/tools/llvmc/llvmc.cpp

Reid Spencer reid at x10sys.com
Tue Aug 24 07:05:40 PDT 2004



Changes in directory llvm/tools/llvmc:

llvmc.cpp updated: 1.7 -> 1.8
---
Log message:

- Unify format of output messages
- All errors throw std::string
- Default output file name to a.out (if we're linking)


---
Diffs of the changes:  (+10 -7)

Index: llvm/tools/llvmc/llvmc.cpp
diff -u llvm/tools/llvmc/llvmc.cpp:1.7 llvm/tools/llvmc/llvmc.cpp:1.8
--- llvm/tools/llvmc/llvmc.cpp:1.7	Thu Aug 19 16:52:49 2004
+++ llvm/tools/llvmc/llvmc.cpp	Tue Aug 24 09:05:30 2004
@@ -214,11 +214,14 @@
 
     // Deal with unimplemented options.
     if (PipeCommands)
-      std::cerr << argv[0] << ": Not implemented yet: -pipe";
+      throw "Not implemented yet: -pipe";
+
+    if (OutputFilename.empty())
+      if (OptLevel == CompilerDriver::LINKING)
+        OutputFilename = "a.out";
+      else
+        throw "An output file must be specified. Please use the -o option";
 
-    // Default the output file, only if we're going to try to link
-    if (OutputFilename.empty() && OptLevel == CompilerDriver::LINKING)
-      OutputFilename = "a.out";
 
     // Construct the ConfigDataProvider object
     LLVMC_ConfigDataProvider Provider;
@@ -283,15 +286,15 @@
     // Tell the driver to do its thing
     int result = CD.execute(InpList,OutputFilename);
     if (result != 0) {
-      std::cerr << argv[0] << ": Error executing actions. Terminated.\n";
+      throw "Error executing actions. Terminated.\n";
       return result;
     }
 
     // All is good, return success
     return 0;
   } catch (std::string& msg) {
-    std::cerr << msg << "\n";
+    std::cerr << argv[0] << ": " << msg << "\n";
   } catch (...) {
-    std::cerr << "Unexpected unknown exception occurred.\n";
+    std::cerr << argv[0] << ": Unexpected unknown exception occurred.\n";
   }
 }






More information about the llvm-commits mailing list