diff options
author | Benjamin Kramer <benny.kra@googlemail.com> | 2009-11-14 14:14:58 +0000 |
---|---|---|
committer | Benjamin Kramer <benny.kra@googlemail.com> | 2009-11-14 14:14:58 +0000 |
commit | 7b068610eb68ae02c1c92a98d4a3749c7cb6456c (patch) | |
tree | c3cdec900cab78cdc3f37884e2f7fac60d677dd1 /include | |
parent | 067d024b05e56d2847608c9149a7151d6531c036 (diff) | |
download | external_llvm-7b068610eb68ae02c1c92a98d4a3749c7cb6456c.zip external_llvm-7b068610eb68ae02c1c92a98d4a3749c7cb6456c.tar.gz external_llvm-7b068610eb68ae02c1c92a98d4a3749c7cb6456c.tar.bz2 |
Make NORETURN working with MSVC. MSVC only accepts NORETURN in front of the
decl so move it there. GCC accepts it both in front and after decls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@88791 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/Support/Compiler.h | 2 | ||||
-rw-r--r-- | include/llvm/Support/ErrorHandling.h | 10 |
2 files changed, 7 insertions, 5 deletions
diff --git a/include/llvm/Support/Compiler.h b/include/llvm/Support/Compiler.h index 342a97d..67770c3 100644 --- a/include/llvm/Support/Compiler.h +++ b/include/llvm/Support/Compiler.h @@ -58,6 +58,8 @@ #ifdef __GNUC__ #define NORETURN __attribute__((noreturn)) +#elif defined(_MSC_VER) +#define NORETURN __declspec(noreturn) #else #define NORETURN #endif diff --git a/include/llvm/Support/ErrorHandling.h b/include/llvm/Support/ErrorHandling.h index 67bccf0..6067795 100644 --- a/include/llvm/Support/ErrorHandling.h +++ b/include/llvm/Support/ErrorHandling.h @@ -60,15 +60,15 @@ namespace llvm { /// standard error, followed by a newline. /// After the error handler is called this function will call exit(1), it /// does not return. - void llvm_report_error(const char *reason) NORETURN; - void llvm_report_error(const std::string &reason) NORETURN; - void llvm_report_error(const Twine &reason) NORETURN; + NORETURN void llvm_report_error(const char *reason); + NORETURN void llvm_report_error(const std::string &reason); + NORETURN void llvm_report_error(const Twine &reason); /// This function calls abort(), and prints the optional message to stderr. /// Use the llvm_unreachable macro (that adds location info), instead of /// calling this function directly. - void llvm_unreachable_internal(const char *msg=0, const char *file=0, - unsigned line=0) NORETURN; + NORETURN void llvm_unreachable_internal(const char *msg=0, + const char *file=0, unsigned line=0); } /// Prints the message and location info to stderr in !NDEBUG builds. |