Ha nem adod hozza a cdecl-t, ket problema lehet.
A., peldaul mashol varja a 'sig' parametert a hivott Pascal kod, mint ahova a C-s kod rakja. Pelda: linux-i386, ahol a C kod mindent a stacken ad at, mig a Pascal kod hasznal bizonyos regisztereket.
B., a mar emlitett stack cleanup problema. Szinten i386-Linux, ha jol remlik, ill. Win32 (de az itt most ugye nem jatszik) illetve m68k-Linux biztosan.
Pl. x86_64 es ARM platformokon nem latod ezt a problemat, mert ott az FPC a SYSV ABI-t koveti, amit a rendszer tobbi resze, mivel itt nem volt "historic" Pascal ABI amit tamogatni lehetett/kellett (miert kellett? pl. inline assembly rutinok miatt, amik fix regiszterekben vartak dolgokat).
Konkretan az eggyel ezelotti cegemnel meg voltak gyozodve h. i386-Linuxon bugos az FPC, mert a fasza kodjuk arm-linuxon ment FPC-vel, de i386-on szetfagyott... Kb. ket tucat hianyzo cdecl hozzaadasa utan egybol mukodni kezdett. Ki erti.
-=- Mire a programozó: "Na és szerintetek ki csinálta a káoszt?" -=-