// https://issues.dlang.org/show_bug.cgi?id=22388 void setTimer(void delegate()) @system; void setTimer(void delegate() @safe) @safe; void setTimer2(void delegate() @safe) @safe; void setTimer2(void delegate()) @system; void main() @safe { setTimer(() => assert(false)); alias lambda = () => assert(false); setTimer(lambda); // Reversed order setTimer2(() => assert(false)); alias lambda2 = () => assert(false); setTimer2(lambda2); }