Code: Alles auswählen
Declare B(a)
ProcedureC A(a,b,c)
B(a)
EndProcedure
ProcedureC B(a)
EndProcedure
A(a,b,c)
B(a)
Der Stack sollte doch nach dem aufrufen einer CDECL Funktionen wieder in den Ursprungszustand
gebracht werden.
Code: Alles auswählen
push a
call B
add esp,4
Code: Alles auswählen
; ProcedureC A(a,b,c)
macro MP2{
_Procedure2:
PS2=4
; B(a)
PUSH dword [esp+PS2+0]
CALL _Procedure0
; EndProcedure
XOR eax,eax
_EndProcedure3:
RET
}
es aber nur zu geben, wenn man Declare (kann es sein das ich nen "DeclareC" uebersehen habe?)
verwendet und die Funktion tatsaechlich erst nach dem Aufrufen definiert wurde.
Getestet hab ich mit der aktuellen Version 4.51 und 4.60 RC1 (32bit)