/* Test von exceptions in gemischten C/D Projekten */ /* test of exceptions in mixed C/D projects */ #include #ifdef __cplusplus extern "C" { #endif /* __cplusplus */ typedef void (*readerptr)(int rparam); extern void dhandler(int param); void doCstuff(int param) { if (param != 13) printf("C stuff done for param %d\n", param); else dhandler(param); } void* store; readerptr reader; void setReader(void* r, void (*fn)(int rparam)) { store = r; reader = fn; } void* getReader(void) { return store; } void doCRead(void) { reader(2008); } #ifdef __cplusplus } #endif /* __cplusplus */