[llvm-commits] CVS: llvm/include/llvm/Bytecode/Archive.h
Reid Spencer
reid at x10sys.com
Fri Jul 7 12:09:29 PDT 2006
Changes in directory llvm/include/llvm/Bytecode:
Archive.h updated: 1.14 -> 1.15
---
Log message:
Remove EH use from the Archive library and adjust its users accordingly.
---
Diffs of the changes: (+18 -6)
Archive.h | 24 ++++++++++++++++++------
1 files changed, 18 insertions(+), 6 deletions(-)
Index: llvm/include/llvm/Bytecode/Archive.h
diff -u llvm/include/llvm/Bytecode/Archive.h:1.14 llvm/include/llvm/Bytecode/Archive.h:1.15
--- llvm/include/llvm/Bytecode/Archive.h:1.14 Wed Feb 22 10:23:42 2006
+++ llvm/include/llvm/Bytecode/Archive.h Fri Jul 7 14:09:13 2006
@@ -438,12 +438,14 @@
/// name will be truncated at 15 characters. If \p Compress is specified,
/// all archive members will be compressed before being written. If
/// \p PrintSymTab is true, the symbol table will be printed to std::cout.
- /// @throws std::string if an error occurs
+ /// @returns false if an error occurred, \p error set to error message
+ /// @returns true if the writing succeeded.
/// @brief Write (possibly modified) archive contents to disk
- void writeToDisk(
+ bool writeToDisk(
bool CreateSymbolTable=false, ///< Create Symbol table
bool TruncateNames=false, ///< Truncate the filename to 15 chars
- bool Compress=false ///< Compress files
+ bool Compress=false, ///< Compress files
+ std::string* error = 0 ///< If non-null, where error msg is set
);
/// This method adds a new file to the archive. The \p filename is examined
@@ -481,9 +483,19 @@
/// @brief Write the symbol table to an ofstream.
void writeSymbolTable(std::ofstream& ARFile);
- /// @brief Write one ArchiveMember to an ofstream.
- void writeMember(const ArchiveMember& member, std::ofstream& ARFile,
- bool CreateSymbolTable, bool TruncateNames, bool ShouldCompress);
+ /// Writes one ArchiveMember to an ofstream. If an error occurs, returns
+ /// false, otherwise true. If an error occurs and error is non-null then
+ /// it will be set to an error message.
+ /// @returns true Writing member succeeded
+ /// @returns false Writing member failed, \p error set to error message
+ bool writeMember(
+ const ArchiveMember& member, ///< The member to be written
+ std::ofstream& ARFile, ///< The file to write member onto
+ bool CreateSymbolTable, ///< Should symbol table be created?
+ bool TruncateNames, ///< Should names be truncated to 11 chars?
+ bool ShouldCompress, ///< Should the member be compressed?
+ std::string* error = 0 ///< If non-null, place were error msg is set
+ );
/// @brief Fill in an ArchiveMemberHeader from ArchiveMember.
bool fillHeader(const ArchiveMember&mbr,
More information about the llvm-commits
mailing list