Dada una variable de tipo lista simplemente enlazada es valido hacer esto para devolver una lista?
...
cont:= ...;
lres:=iter;
WHILE cont > 0 DO
cont:= cont - 1;
NEW(iter);
iter^.elem:= cont;
iter^.sig:= NIL;
iter:= iter^.sig
END;
RETURN lres;
END ...;