- Timestamp:
- Aug 8, 2003, 1:21:41 AM (22 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/emx/src/lib/startup/dllinit.c
-
Property cvs2svn:cvs-rev
changed from
1.6
to1.7
r546 r547 1 /* */ 1 /* $Id$ */ 2 /** @file 3 * Default DLL init and termination code. 4 */ 5 2 6 #include <emx/startup.h> 3 7 extern int _CRT_init (void); 4 8 extern void __ctordtorInit (void); 5 9 extern void __ctordtorTerm (void); 6 extern void __ehInitDLL (void);7 #pragma weak __ehInitDLL8 extern void __ehTermDLL (void);9 #pragma weak __ehTermDLL10 10 11 11 /** 12 12 * This is the typical DLL startup code. __ehInitDLL and __ehTermDLL is called 13 * are for exception handler stuff in gcc, the two functions will be linked if 14 * there is exception handler info in the module. (Btw. if these calls wasn't 13 * are for exception handler stuff in gcc, the two functions will be linked if 14 * there is exception handler info in the module. (Btw. if these calls wasn't 15 15 * made we would fail to catch exceptions in C++ code.) 16 16 * @returns 1 on success. … … 28 28 if (_CRT_init () != 0) 29 29 break; 30 #if 0 /** @todo Weaks aren't working too well with ld at the moment. 31 * Andy added the calls to the static constructor and destructor lists 32 * which means we don't guarantee that throw/catch works during init 33 * and destruction of static objects. Don't belive it'll cause any 34 * trouble. Before too long we should put back this code. 35 */ 30 36 if (__ehInitDLL) 31 37 __ehInitDLL (); 38 #endif 32 39 __ctordtorInit (); 33 40 return 1; 34 41 case 1: 35 42 __ctordtorTerm (); 43 #if 0 /* weaks aren't working at the moment */ 36 44 if (__ehTermDLL) 37 45 __ehTermDLL (); 46 #endif 38 47 return 1; 39 48 } -
Property cvs2svn:cvs-rev
changed from
Note:
See TracChangeset
for help on using the changeset viewer.