declarations of abort(), and two, we mark it noreturn. Missing the latter
shows up in one of the "embarassing" tests (from the thread on llvmdev
"detailed comparison of generated code size for LLVM and other compilers").
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91515
91177308-0d34-0410-b5e6-
96231b3b80d8
// C99 library functions
// C99 stdlib.h
+LIBBUILTIN(abort, "v", "fr", "stdlib.h")
LIBBUILTIN(calloc, "v*zz", "f", "stdlib.h")
LIBBUILTIN(exit, "vi", "fr", "stdlib.h")
LIBBUILTIN(_Exit, "vi", "fr", "stdlib.h")
int setregid(gid_t, gid_t);
int setreuid(uid_t, uid_t);
extern void check(int);
+void abort(void);
void test_setuid()
{
// RUN: %clang_cc1 %s -verify -fsyntax-only
+void abort(void);
+
@interface Subclass
+ (int)magicNumber;
+ (void)setMagicNumber:(int)value;
- (void) setOptional_getter_attr:(int)value { ivar = value; }
@end
+void abort(void);
int main ()
{
Test *x = [[Test alloc] init];
}
@end
+void abort(void);
int main (void) {
Subclass *x = [[Subclass alloc] init];