E.g. this code: void foo(void delegate(int) dg) { dg(); //writefln("%s", dg(3)); } Below due to the backticks it looks like 0 was the argument value passed, not the expected number of arguments. Error: delegate `dg(int)` is not callable using argument types `()` too few arguments, expected `1`, got `0` Should be: too few arguments, expected 1, got 0 PR incoming.
@ntrel created dlang/dmd pull request #14628 "Fix Issue 23470 - Backticks in diagnostic are confusing with wrong nu…" fixing this issue: - Fix Issue 23470 - Backticks in diagnostic are confusing with wrong number of arguments passed https://github.com/dlang/dmd/pull/14628
dlang/dmd pull request #14628 "Fix Issue 23470 - Backticks in diagnostic are confusing with wrong nu…" was merged into master: - a5afe3fe6faf89c883a6f06113f38b395843b5de by Nick Treleaven: Fix Issue 23470 - Backticks in diagnostic are confusing with wrong number of arguments passed https://github.com/dlang/dmd/pull/14628