diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2006-08-21 06:00:58 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2006-08-21 06:00:58 +0000 |
commit | d2a8e656c504b0708e1343542d984e14b8eb948c (patch) | |
tree | 1368ac97b06cbb5ae3fc2a2193a5e9b4f20be9f5 /include/llvm/System/Program.h | |
parent | 037ce981d8ebbe275236814876441f872d438c26 (diff) |
For PR797:
Change interface for error recovery without exceptions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@29789 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/System/Program.h')
-rw-r--r-- | include/llvm/System/Program.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/include/llvm/System/Program.h b/include/llvm/System/Program.h index 2b5b488ffb..3c9230c9e0 100644 --- a/include/llvm/System/Program.h +++ b/include/llvm/System/Program.h @@ -49,10 +49,7 @@ namespace sys { /// 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 @@ namespace sys { ///< 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(); + /// @} }; } } |