On 04/26/2014 11:27 AM, Rémy Mouëza wrote: > You will also have to declare 2 function for initializing and > terminating D's runtime: > char rt_init(long long); > char rt_term(long long); > > call rt_init(0) before using your D functions (this will initialize D > runtime - the D GC amongst other things), then use rt_term(0) at the end > of the program - you may want to register an exit function with atexit().
And if those functions are called from the library's own initialization and deinitialization functions, the C program need not know anything about the D runtime dependence:
void mylib_init() { rt_init(0); // ... other initialization } Ali