digitalmars.D.bugs - [Issue 22784] New: pragma(printf) applies to nested functions
- d-bugmail puremagic.com (27/27) Feb 16 2022 https://issues.dlang.org/show_bug.cgi?id=22784
https://issues.dlang.org/show_bug.cgi?id=22784 Issue ID: 22784 Summary: pragma(printf) applies to nested functions Product: D Version: D2 Hardware: All OS: All Status: NEW Severity: normal Priority: P1 Component: dmd Assignee: nobody puremagic.com Reporter: duser airmail.cc example: import core.stdc.stdarg; extern(C) pragma(printf) void fn(const(char)* fmt, ...) { void inner(){} } output: test.d(6): Error: function `test.fn.inner` `pragma(printf)` functions must be `extern(C) void inner([parameters...], const(char)*, va_list)` i'd expect the pragma to apply to the outer function only so you can have non-printf-like helper functions inside a printf-like function --
Feb 16 2022