summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/MemoryBuffer.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-12-01 22:51:41 +0000
committerChris Lattner <sabre@nondot.org>2009-12-01 22:51:41 +0000
commit0e3b78a6c21b27eb1d73351a6d856778b57de54b (patch)
tree1a87822d5e1642c445c13e83bdaef6c2c100c7f6 /llvm/lib/Support/MemoryBuffer.cpp
parentb2dc72d2d006187ea1c3757843f9c4eea08d97fc (diff)
downloadbcm5719-llvm-0e3b78a6c21b27eb1d73351a6d856778b57de54b.tar.gz
bcm5719-llvm-0e3b78a6c21b27eb1d73351a6d856778b57de54b.zip
return more useful error messages by using strerror to format errno
instead of returning an ambiguous reason. llvm-svn: 90275
Diffstat (limited to 'llvm/lib/Support/MemoryBuffer.cpp')
-rw-r--r--llvm/lib/Support/MemoryBuffer.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/Support/MemoryBuffer.cpp b/llvm/lib/Support/MemoryBuffer.cpp
index b04864a1a68..df1aa6a25d0 100644
--- a/llvm/lib/Support/MemoryBuffer.cpp
+++ b/llvm/lib/Support/MemoryBuffer.cpp
@@ -176,7 +176,7 @@ MemoryBuffer *MemoryBuffer::getFile(StringRef Filename, std::string *ErrStr,
#endif
int FD = ::open(Filename.str().c_str(), O_RDONLY|OpenFlags);
if (FD == -1) {
- if (ErrStr) *ErrStr = "could not open file";
+ if (ErrStr) *ErrStr = strerror(errno);
return 0;
}
@@ -186,7 +186,7 @@ MemoryBuffer *MemoryBuffer::getFile(StringRef Filename, std::string *ErrStr,
struct stat FileInfo;
// TODO: This should use fstat64 when available.
if (fstat(FD, &FileInfo) == -1) {
- if (ErrStr) *ErrStr = "could not get file length";
+ if (ErrStr) *ErrStr = strerror(errno);
::close(FD);
return 0;
}
@@ -230,8 +230,8 @@ MemoryBuffer *MemoryBuffer::getFile(StringRef Filename, std::string *ErrStr,
// try again
} else {
// error reading.
+ if (ErrStr) *ErrStr = strerror(errno);
close(FD);
- if (ErrStr) *ErrStr = "error reading file data";
return 0;
}
}
OpenPOWER on IntegriCloud