ubuntu-buildroot/output/build/host-gcc-initial-11.4.0/gcc/testsuite/gdc.test/runnable/test7595.d

27 lines
397 B
D

// EXTRA_SOURCES: imports/a7595.d
template isSafe(alias func)
{
@safe void dummySafeFunc()
{
func();
}
enum isSafe = is(typeof(dummySafeFunc()));
}
template areAllSafe(funcs...)
{
enum areAllSafe = isSafe!(funcs[0]);
}
@safe benchmark(fun...)(uint n)
if (areAllSafe!fun)
{
foreach(i, unused; fun)
{
foreach (j; 0 .. n)
fun[i]();
}
}