forum-msg-id-132764-edit
Original date:2018-06-14 07:32:44 Edited by: petelomax Subject: Re: phix and debugging question
begin said...
trace(1) and F6 dies with
pDiagN.e line 3300: symtab[220] bad S_NTyp[1] H:\Euphoriaprog\Microexp\testmicroexp.ew:-1 (era=#00600DDC, from_addr=#0, ret_addr=#0) type check failure, ???(varno=8738[or_ecx=#00002222]) is ???
Can you try grabbing a fuller screenshot? For example, running Greg's "wrong file mode for attempted operation" sample as recently posted, trace(1) F6 (and <Ctrl A><CR>) gives me:
..Files (x86)\Phix\builtins\database.e F1=main F2=trace F3=help ? q Q ! 296: end function 297: 298: procedure put1(integer x) 299: -- write 1 byte to current database file 300: puts(current_db, x) 301: end procedure 302: 303: procedure put4(atom x) 304: -- write 4 bytes to current database file 305: -- x is 32-bits max 306: poke4(mem0, x) -- faster than doing divides etc. 307==> puts(current_db, peek(memseq)) C:\Program Files (x86)\Phix\builtins\database.e:307 in procedure put4() wrong file mode for attempted operation x = 45ocedure putn(sequence s) ... called from C:\Program Files (x86)\Phix\builtins\database.e:508 in function db_allocate()uts(current_db, s) n = 41d procedure free_list = <novalue> size = <novalue>fe_seek(atom pos) size_ptr = <novalue>ition in the current db file addr = <novalue>current_db, pos)!=0 then free_count = 0tal(sprintf("seek to position %d failed!\n", pos)) remaining = <novalue> i = <novalue> Global & Local Variables --> see C:\Program Files (x86)\Phix\ex.err Press Enter...
So obviously, in that case, it is failing on line 307 (and obviously the fact that you get a line number of -1 instead, is the biggest problem here).
begin said...
ps if you don' need the symtab (previous post) any more, i edit and delete them - to shorten the post.
yeah, that may as well go now.
Pete
Not Categorized, Please Help
|