bzw. man sieht es auch am Code, dass keine eigene Aufrufkonvention angegeben wurde.
Nicht wenn er es im Interface angegeben hat.
Also innerhalb der EXE wird ja überall die selbe Deklaration verwendet.
Bei der
DLL können es unterschiedliche Deklarationen sein, welche sich dann natürlich unterscheiden könnten.
Darum würde ich hier entweder auf eine alte/falsche/fehlerhafte
DCU tippen
(alles neu Erzeugen würde das klären, aber ich glaub eher nicht dran),
oder eben ein Compiler-Fehler.
Also wo der Compiler irgendwie durcheinander kommt und irgendwo/-wie mit der Reihenfolge durcheinander kommt.
Immerhin kennt er ja mehrere Aufrufkonventionen.