llvm-for-llvmta/tools/clang/test/CodeGen/call.c

40 lines
949 B
C

// RUN: %clang %s -O0 -emit-llvm -S -o - | FileCheck %s
// This should call rb_define_global_function, not rb_f_chop.
void rb_define_global_function (const char*,void(*)(),int);
static void rb_f_chop();
void Init_String() {
rb_define_global_function("chop", rb_f_chop, 0);
}
static void rb_f_chop() {
}
// CHECK: call{{.*}}rb_define_global_function
// PR10335
typedef void (* JSErrorCallback)(void);
void js_GetErrorMessage(void);
void JS_ReportErrorNumber(JSErrorCallback errorCallback, ...);
void Interpret() {
JS_ReportErrorNumber(js_GetErrorMessage, 0);
// CHECK: call {{.*}}void ({{.*}}, ...) @JS_ReportErrorNumber({{.*}}@js_GetErrorMessage
}
// PR10337
struct sigaction { int (*_sa_handler)(int); };
typedef int SigHandler ();
typedef struct sigaction sighandler_cxt;
SigHandler *rl_set_sighandler(ohandler)
sighandler_cxt *ohandler; {
return 0;
}
void rl_set_signals() {
SigHandler *oh;
oh = rl_set_sighandler(0);
}