[llvm-commits] CVS: llvm/include/llvm/System/Program.h
Reid Spencer
reid at x10sys.com
Sun Aug 20 23:01:12 PDT 2006
Changes in directory llvm/include/llvm/System:
Program.h updated: 1.12 -> 1.13
---
Log message:
For PR797: http://llvm.org/PR797 :
Change interface for error recovery without exceptions.
---
Diffs of the changes: (+10 -8)
Program.h | 18 ++++++++++--------
1 files changed, 10 insertions(+), 8 deletions(-)
Index: llvm/include/llvm/System/Program.h
diff -u llvm/include/llvm/System/Program.h:1.12 llvm/include/llvm/System/Program.h:1.13
--- llvm/include/llvm/System/Program.h:1.12 Sun Aug 20 21:04:43 2006
+++ llvm/include/llvm/System/Program.h Mon Aug 21 01:00:58 2006
@@ -49,10 +49,7 @@
/// called then a std::string is thrown.
/// @returns an integer result code indicating the status of the program.
/// A zero or positive value indicates the result code of the program. A
- /// negative value is the signal number on which it terminated. A value of
- /// -9999 indicates the program could not be executed.
- /// @throws std::string on a variety of error conditions or if the invoked
- /// program aborted abnormally.
+ /// negative value is the signal number on which it terminated.
/// @see FindProgrambyName
/// @brief Executes the program with the given set of \p args.
static int ExecuteAndWait(
@@ -70,16 +67,21 @@
///< should have a size of at least three. If the pointer in the array
///< are not null, then the inferior process's stdin(0), stdout(1),
///< and stderr(2) will be redirected to the corresponding Paths.
- unsigned secondsToWait = 0 ///< If non-zero, this specifies the amount
+ unsigned secondsToWait = 0, ///< If non-zero, this specifies the amount
///< of time to wait for the child process to exit. If the time
///< expires, the child is killed and this call returns. If zero,
///< this function will wait until the child finishes or forever if
///< it doesn't.
+ std::string* ErrMsg = 0 ///< If non-zero, provides a pointer to a string
+ ///< instance in which error messages will be returned. If the string
+ ///< is non-empty upon return an error occurred while invoking the
+ ///< program.
);
// These methods change the specified standard stream (stdin or stdout) to
- // binary mode.
- static void ChangeStdinToBinary();
- static void ChangeStdoutToBinary();
+ // binary mode. They return true if an error occurred
+ static bool ChangeStdinToBinary();
+ static bool ChangeStdoutToBinary();
+ /// @}
};
}
}
More information about the llvm-commits
mailing list