- static MemoryBuffer *getFile(StringRef Filename,
- std::string *ErrStr = 0,
- int64_t FileSize = -1,
- struct stat *FileInfo = 0);
- static MemoryBuffer *getFile(const char *Filename,
- std::string *ErrStr = 0,
- int64_t FileSize = -1,
- struct stat *FileInfo = 0);
-
+ static MemoryBuffer *getFile(StringRef Filename, error_code &ec,
+ int64_t FileSize = -1);
+ static MemoryBuffer *getFile(const char *Filename, error_code &ec,
+ int64_t FileSize = -1);
+
+ /// getOpenFile - Given an already-open file descriptor, read the file and
+ /// return a MemoryBuffer. This takes ownership of the descriptor,
+ /// immediately closing it after reading the file.
+ static MemoryBuffer *getOpenFile(int FD, const char *Filename,
+ error_code &ec,
+ int64_t FileSize = -1);
+