Mark __builtin_eh_return as noreturn. Patch by Dimitry Andric.

llvm-svn: 109452
This commit is contained in:
Benjamin Kramer 2010-07-26 22:04:15 +00:00
parent f23a06c2e4
commit e93c39045a
2 changed files with 5 additions and 1 deletions

View File

@ -324,7 +324,7 @@ BUILTIN(__builtin_vsprintf, "ic*cC*a", "nFP:1:")
BUILTIN(__builtin_vsnprintf, "ic*zcC*a", "nFP:2:")
// GCC exception builtins
BUILTIN(__builtin_eh_return, "vzv*", "") // FIXME: Takes intptr_t, not size_t!
BUILTIN(__builtin_eh_return, "vzv*", "r") // FIXME: Takes intptr_t, not size_t!
BUILTIN(__builtin_frob_return_addr, "v*v*", "n")
BUILTIN(__builtin_dwarf_cfa, "v*", "n")
BUILTIN(__builtin_init_dwarf_reg_size_table, "vv*", "n")

View File

@ -80,3 +80,7 @@ void test12(void) {
void test_unknown_builtin(int a, int b) {
__builtin_foo(a, b); // expected-error{{use of unknown builtin}}
}
int test13() {
__builtin_eh_return(0, 0); // no warning, eh_return never returns.
}