[Allegro] Variablen-Lebensdauer / -gueltigketi beim Index-Lauf

Thomas Berger ThB at Gymel.com
Mi Dez 7 10:46:01 CET 2011


Lieber Herr Eger,

> Sie schrieben u.a.:
> 
>> Phh. =ty etc. sind doch keine Zuweisungsbefehle!
> 
> Natürlich nicht, jedoch wurde und wird in den mit Allegro-C
> ausgelieferten Parametern, die für mich und auch die Anwender
> immer so eine Art Referenz darstellen (sollten?), ausgiebig
> von =xy-Konstruktionen ohne irgendeinen Sprung oder eine
> Zwischenteilangabe Gebrauch gemacht.
> 
> Zeilen wie '#8n p"z" e1 =zz' wirken eben wie Zuweisungen.

ok., hier kommt "Z" nach #uzz, falls #8n belegt ist. Und
wegen einer Ausnahmeregel fuer "=xy,0" kommt es wohl auch
dann zu keiner Ausgabe, wenn #uzz vorher etwas anderes als
"Z" enthielt.


Reales Beispiel aus der "grossen" cat.api:

#u1 +#u1 ▼z y0 =s1   Invnr

Hier scheint einerseits davon ausgegangen zu werden, dass
etwas ausgegeben wird (wozu sonst das y0), andererseits
aber wohl auch, dass der Sprung genommen wird, beides
gleichzeitig geht aber gar nicht. Wenn man die obige
Ausnahmeregel allerdings als gueltig annimmt, wird hingegen
in allen Faellen weder etwas ausgegeben noch gesprungen...

Was lernen wir daraus?

viele Gruesse
Thomas Berger

(Aufloesung des Raetsels: Der Bereich in der .api bei

#98g  (nur als Sprungmarke)

kann nachweislich sowieso nie abgearbeitet werden, die scheinbar
dort gebildeten Schluessel stammen aus anderen Abschnitten...)





Mehr Informationen über die Mailingliste Allegro