Zitat von
Flocke:
und ich habe noch keinen disassemblierten Delphi-Code gesehen, bei dem immer ein push eax/pop eax um Funktionsaufrufe herum steht
Und wenn man eine lokale String Variable hat oder einen String-Parameter ohne var/const/out, dann wird für Result sowieso auf den Stack Platz geschafft, weil der Compiler ein try/finally um die Funktion aufbaut. Da kann die Zuweisung an Result auch direkt vor dem "end" stehen. Das finally kommt trotzdem danach.