[Oberon] PO2013 - Show Heap Blocks
Joerg
joerg.straube at iaeth.ch
Tue Jun 23 15:22:12 CEST 2020
> PROCEDURE GetBlock32(VAR p: LONGINT);
> CONST nil = 0;
> VAR q: LONGINT;
> BEGIN
> IF list3 # nil THEN p := list3; (*next*) SYSTEM.GET(list3+8, list3)
> ELSE GetBlock64(q); (*list3 := nil*) SYSTEM.PUT(q+40, nil) END
> END GetBlock32;
>
> What I see happening is, IF list3 # NIL THEN (*next*) list3 := tag (*of a used record*)
No. Your understanding is not correct.
Look at the TYPE declaration in my previous mail and look again at the code.
Jörg
More information about the Oberon
mailing list