diff options
author | David Blaikie <dblaikie@gmail.com> | 2012-02-09 00:29:19 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2012-02-09 00:29:19 +0000 |
commit | 4eebfb8b399b1e0a209c971690e108c18c0e1f10 (patch) | |
tree | 068a2d5fbb218cc4e3ef8f67491152429281d296 | |
parent | f56ce5312448e5876ee1822facab48385ea5c0c0 (diff) | |
download | external_llvm-4eebfb8b399b1e0a209c971690e108c18c0e1f10.zip external_llvm-4eebfb8b399b1e0a209c971690e108c18c0e1f10.tar.gz external_llvm-4eebfb8b399b1e0a209c971690e108c18c0e1f10.tar.bz2 |
Remove static initializer from DataStream.cpp
If someone would prefer a clear name for the 'success' error_value we could
come up with one - potentially just a 'named constructor' style
'error_value::success()' to make this expression more self-documenting. If
I see this come up in other cases I'll certainly consider it.
One step along the way to resolving PR11944.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@150120 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Support/DataStream.cpp | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/lib/Support/DataStream.cpp b/lib/Support/DataStream.cpp index b2dd979..0e8a717 100644 --- a/lib/Support/DataStream.cpp +++ b/lib/Support/DataStream.cpp @@ -49,8 +49,6 @@ DataStreamer::~DataStreamer() {} namespace { -const static error_code success; - // Very simple stream backed by a file. Mostly useful for stdin and debugging; // actual file access is probably still best done with mmap. class DataFileStreamer : public DataStreamer { @@ -66,18 +64,20 @@ public: } error_code OpenFile(const std::string &Filename) { - int OpenFlags = O_RDONLY; -#ifdef O_BINARY - OpenFlags |= O_BINARY; // Open input file in binary mode on win32. -#endif if (Filename == "-") { Fd = 0; sys::Program::ChangeStdinToBinary(); + return error_code(); } - else - Fd = ::open(Filename.c_str(), OpenFlags); - if (Fd == -1) return error_code(errno, posix_category()); - return success; + + int OpenFlags = O_RDONLY; +#ifdef O_BINARY + OpenFlags |= O_BINARY; // Open input file in binary mode on win32. +#endif + Fd = ::open(Filename.c_str(), OpenFlags); + if (Fd == -1) + return error_code(errno, posix_category()); + return error_code(); } }; @@ -87,8 +87,7 @@ namespace llvm { DataStreamer *getDataFileStreamer(const std::string &Filename, std::string *StrError) { DataFileStreamer *s = new DataFileStreamer(); - error_code e = s->OpenFile(Filename); - if (e != success) { + if (error_code e = s->OpenFile(Filename)) { *StrError = std::string("Could not open ") + Filename + ": " + e.message() + "\n"; return NULL; |