forum-msg-id-132747-edit
Original date:2018-06-08 22:32:42 Edited by: petelomax Subject: Re: phix and debugging question
i get
pDiagN.e line 3041: oops, rtn[=9134] out of range[1..2739] H:\Euphoriaprog\Microexp\myinferer_4.ew:-1 (era=#007399B7, from_addr=#0261FD32, ret_addr=#0261FD3E) in procedure init_infer() subscript is not an atom
Hmm. That routine does not seem to be doing any subscripting.
Try p -d testmicroexp.ew, then run the resulting .exe, then see if you can find the (new, +/-1) era/from/ret addresses in the list.asm, and post those snippets here
is it possible to change [1..2739] to something larger in pDiagN.e?
That refers to symtab being only 2739 entries long, but it has encountered a routine[-id] of 9134, so not really.
There is a mapping as the table is compacted, and there is a (sadly) now broken mapsymtab flag in pEmit2.e that
used to disable that compacting/mapping. I guess you could edit that flag, try "p p testmicroexp.ew", and edit it
back after seeing what happens (I wouldn't bother trying to recompile phix though)....
You might also try setting showmapsymtab (also in pEmit2.e) to 9134, and possibly retry if/while that changes the error,
again using the "p p xxx" method rather than bothering to rebuild phix, and undo that edit asap.
i am using the 64 bit phix.
It may be worth giving it a spin on 32 bit, see if that offers any better clues.
(Obviously I fix whatever I can, but 32 bit is simply much more thoroughly tested.)
Pete
Not Categorized, Please Help
|