Vor 5 Stunden
(Dieser Beitrag wurde zuletzt bearbeitet: Vor 4 Stunden von siebenstreich.)
(Vor 8 Stunden)llm schrieb:Zitat:Es gibt eine sehr merkwürdige Stelle im Code: Dort würde ich gerne die Zahl 4 durch INFLECT_PLURAL ersetzen. Damit macht der BCC aber nicht mehr denselben Code
probier unter Borland anstatt enum #define zu benutzen (enum ist was von C, #define is ja nur Textersatz vor dem Kompilieren - da kann nichts anderes raus kommen)
Ich weiß schon, enum ist ein Sprachelement; #define wird dagegen vom Präprozessor aufgelöst und der eigentliche Compiler sieht es gar nicht.
Mit #define geht es, das habe ich gerade ausprobiert. Der Punkt ist halt, dass es mit enum an allen anderen Stellen (und das sind viele) auch funktioniert, z.B. steht 20 Zeilen weiter oben was sehr Ähnliches.
Was auffällt, ist die unmittelbare Nähe zu dem Zugriff auf ein zweidimensionales Array. An dem schon der Kommentar "TODO: this field access produces other code" von Henne dransteht...
Dieser Arrayzugriff scheint den BCC in seltsame Bahnen zu lenken.
Vielleicht kann man den Arrayzugriff irgendwie umformulieren, so dass doch der richtige Code rauskommt. Ich habe ein wenig herumprobiert, aber nichts erreicht.
@llm: Jetzt muss ich noch ein wenig neugierig sein. Gefallen dir die Änderungen? Ist es in etwa so, wie du es dir vorgestellt hattest?

