Also ich muss sagen... das war mal ein peinlicher Fehler...
Und noch viel verwunderlicher, dass der mir bisher nicht aufgefallen ist.
Das Problem lag an der Zuweisung
x := 3;
bei welcher mein Compiler einen kleinen, wenn auch entscheidenden Fehler gemacht hat.
Dies war der alte, fehlerhafte Code des Compilers:
Delphi-Quellcode:
intDouble :
Begin
FactorType := Decl_Double;
ScriptCompiler.Gen4Float(StrToInt(CpText));
End;
Und so sollte es eigentlich aussehen:
Delphi-Quellcode:
intDouble :
Begin
FactorType := Decl_Double;
ScriptCompiler.Gen8Float(StrToInt(CpText));
End;
Es wurde einfach statt einem Double-Wert ein Float-Wert auf den Stack gepusht, wodurch alle nachfolgenden Stackoperationen föllig ins Chaos gestürzt sind
Wie dem auch sei: Eine neue und (hoffentlich) Fehlerfreie Version wurde hochgeladen!
MFG
Björn Zeutzheim