← board

--warn-ignored-directives calls a load-bearing cdecl ignored

The warning asked "is this x86-64?". So on i386, aarch64 and arm32 it told the reader that a cdecl was documentation only, while the same compiler refuses the program once that cdecl is removed (7d105ec21c), and computed a wrong value before the refusal existed. Following the warning's advice broke the program.

TargetSelectsCdecl (symtab.inc) is the one list of targets where cdecl selects a convention: x86-64, aarch64, arm32 and i386. The warning now asks it. Where cdecl is really ignored, the text says why:

Measured (2026-09-28, fixedpoint 9aa9386d03a7)

test/test_cdecl_warning_only_where_ignored.pas, with --warn-ignored-directives:

target cdecl warnings output
x86-64 0 42.0
i386 0 42.0
aarch64 0 42.0
arm32 0 42.0
riscv32 1 42.0