In issue 7854, Walter says that allowing non-C attributes in extern(C) function parameters is a "feature":
https://issues.dlang.org/show_bug.cgi?id=7854#c15
Therefore, I'm opening this enhancement request for making the spec reflect definitively how this feature works. I think a clear explanation will help compiler developers, and will help users understand what actually happens.
See also Walter's PR that uses this feature: https://github.com/dlang/druntime/pull/1917
Comment #1 by code — 2017-10-26T12:43:29Z
On one hand it's definitely a requirement to attribute C functions, so that root primitives have correct attributes and people can actually write attribute correct code using those.
Comment #2 by robert.schadek — 2024-12-15T15:24:22Z