Thread overview
Type-safer usage of diagnostics outputting in dmd
Sep 01, 2020
Per Nordlöw
Sep 01, 2020
Per Nordlöw
Sep 01, 2020
MoonlightSentinel
September 01, 2020
The diagnostics functions in `dmd.errors` are now qualified [1] with the, by Walter, recently added

    pragma(printf)

when the compiler supports it (from dmd version 2.092 and upwards).

In other words, a mismatch between the format part and the argument part in a call to either of

- error(const ref Loc loc, const(char)* format, ...)
- warning(const ref Loc loc, const(char)* format, ...)
- message(const ref Loc loc, const(char)* format, ...)
- deprecation(const ref Loc loc, const(char)* format, ...)
- ...

will now issue a warning.

[1] https://github.com/dlang/dmd/pull/11638
September 01, 2020
On Tuesday, 1 September 2020 at 22:14:11 UTC, Per Nordlöw wrote:
> when the compiler supports it (from dmd version 2.092 and

The host compiler supports it (from dmd version 2.092), that is.
September 01, 2020
On Tuesday, 1 September 2020 at 22:14:11 UTC, Per Nordlöw wrote:
> will now issue a warning.

To be precise, it will issue a deprecation. E.g.

Deprecation: more format specifiers than 0 arguments