Closed Zelldon closed 10 years ago
Accepted, und: Hier können wir direkt mit einbauen: wir erhöhen momentan unnötig den variable count, wenn wir lokale Variablen benutzen. Wenn wir 10 mal astore_1 machen, braucht der local var count bloß 2 zu sein und nicht 20 (oder so). Geprüft mit Utility, die den local var count, der benötigt wird, berechnet (Class Editor).
Nicht done... da hab ich doch irgendeine Nummer verwechselt. Bin jetzt hier dran.
Jetzt done. Dafür kommt dann im Fall deiner Testdatei ein anderer Fehler. Viel Spaß damit.
Also das Problem was gerade noch existiert ist das die LocalVariableStash bei 3 anfaengt da ja im Bytecode oefters mal auch aload, oder astore benutzt wird.
Problem ist jetzt wenn keine Berechnung usw standfindet, somit keine lokale variable benutzt wird, faengt der Stash immer noch bei 3 an und naechstes astore ist 4 was aber nicht mit dem count zusammenpasst. Java mag es anscheind dann nicht wenn astore 4 benutzt wird obwohl der dann insg. 1 ist (wegen einer Variable )
Am besten iwie den count dynamischer mit dem Stash zusammenbringen.
Siehe Beispiel test/multiCharCommand/lambda_call_in_other_function.rail
Ausgabe beim starten: