diff options
author | Jeff Cohen <jeffc@jolt-lang.org> | 2005-01-22 17:36:17 +0000 |
---|---|---|
committer | Jeff Cohen <jeffc@jolt-lang.org> | 2005-01-22 17:36:17 +0000 |
commit | 5fb6ed4ae608c6f7ef589f1069b5dd5c7bdbd60b (patch) | |
tree | 1a699df0388afa1ed3d3acc4e4cd91085adbed10 /tools/opt/opt.cpp | |
parent | 695c9bdbd0ad9d540dea68e201cd616afb4320d4 (diff) | |
download | llvm-5fb6ed4ae608c6f7ef589f1069b5dd5c7bdbd60b.tar.gz llvm-5fb6ed4ae608c6f7ef589f1069b5dd5c7bdbd60b.tar.bz2 llvm-5fb6ed4ae608c6f7ef589f1069b5dd5c7bdbd60b.tar.xz |
Use binary mode for reading/writing bytecode files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@19751 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'tools/opt/opt.cpp')
-rw-r--r-- | tools/opt/opt.cpp | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/tools/opt/opt.cpp b/tools/opt/opt.cpp index fd339d92d9..f54844cb59 100644 --- a/tools/opt/opt.cpp +++ b/tools/opt/opt.cpp @@ -95,6 +95,7 @@ int main(int argc, char **argv) { } // Figure out what stream we are supposed to write to... + // FIXME: cout is not binary! std::ostream *Out = &std::cout; // Default to printing to stdout... if (OutputFilename != "-") { if (!Force && std::ifstream(OutputFilename.c_str())) { @@ -104,7 +105,9 @@ int main(int argc, char **argv) { << "Use -f command line argument to force output\n"; return 1; } - Out = new std::ofstream(OutputFilename.c_str()); + std::ios::openmode io_mode = std::ios::out | std::ios::trunc | + std::ios::binary; + Out = new std::ofstream(OutputFilename.c_str(), io_mode); if (!Out->good()) { std::cerr << argv[0] << ": error opening " << OutputFilename << "!\n"; @@ -117,8 +120,8 @@ int main(int argc, char **argv) { } // If the output is set to be emitted to standard out, and standard out is a - // console, print out a warning message and refuse to do it. We don't impress - // anyone by spewing tons of binary goo to a terminal. + // console, print out a warning message and refuse to do it. We don't + // impress anyone by spewing tons of binary goo to a terminal. if (!Force && !NoOutput && CheckBytecodeOutputToConsole(Out,!Quiet)) { NoOutput = true; } |