2010-01-01 10:34:51 +00:00
|
|
|
// RUN: %clang_cc1 -fsyntax-only -verify %s
|
2012-12-02 13:20:44 +00:00
|
|
|
// expected-no-diagnostics
|
2009-06-02 17:58:47 +00:00
|
|
|
typedef void (*thread_continue_t)();
|
|
|
|
|
|
|
|
extern "C" {
|
2009-10-14 18:03:49 +00:00
|
|
|
extern void kernel_thread_start(thread_continue_t continuation);
|
|
|
|
extern void pure_c(void);
|
2009-06-02 17:58:47 +00:00
|
|
|
}
|
|
|
|
|
2009-10-14 18:03:49 +00:00
|
|
|
class _IOConfigThread {
|
2009-06-02 17:58:47 +00:00
|
|
|
public:
|
2009-10-14 18:03:49 +00:00
|
|
|
static void main( void );
|
2009-06-02 17:58:47 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
|
2009-10-14 18:03:49 +00:00
|
|
|
void foo( void ) {
|
|
|
|
kernel_thread_start(&_IOConfigThread::main);
|
|
|
|
kernel_thread_start((thread_continue_t)&_IOConfigThread::main);
|
|
|
|
kernel_thread_start(&pure_c);
|
2009-06-02 17:58:47 +00:00
|
|
|
}
|