xref: /netbsd-src/external/gpl3/gcc.old/dist/libphobos/testsuite/libphobos.shared/libloaddep.d (revision 627f7eb200a4419d89b531d55fccd2ee3ffdcde0)
1*627f7eb2Smrg import core.runtime, core.sys.posix.dlfcn;
2*627f7eb2Smrg 
3*627f7eb2Smrg extern(C) alias RunTests = int function();
4*627f7eb2Smrg 
runDepTests(const char * name)5*627f7eb2Smrg extern(C) int runDepTests(const char* name)
6*627f7eb2Smrg {
7*627f7eb2Smrg     auto h = rt_loadLibrary(name);
8*627f7eb2Smrg     if (h is null) return false;
9*627f7eb2Smrg     auto runTests = cast(RunTests).dlsym(h, "runTests");
10*627f7eb2Smrg     assert(runTests !is null);
11*627f7eb2Smrg     if (!runTests()) return false;
12*627f7eb2Smrg     return rt_unloadLibrary(h);
13*627f7eb2Smrg }
14