### forum-msg-id-132993-edit

Original date:2018-08-26 15:43:25 Edited by: petelomax Subject: Re: [Phix] Compilation error

Pirx said...

BTW I'm using Linux, so the C:\Program Files (x86)\Phix\pilx86.e part is another mystery for me...

If you can run ./p -cp (see below) you should then get corrected paths. I will take a closer look at that for the next release.

Pirx said...

```C:\Program Files (x86)\Phix\pilx86.e:4372 in function jskip()
attempt to subscript an atom
```

I managed to reproduce something similar:

```/home/pete/phix/pilx86.e:4372 in function jskip()
index 87 out of bounds, reading sequence length 56
```

There is something nasty going on with "exit" and "end for" which has troubled me on and off for a while now.
The opEndFor instruction fixes up a few things in the preceding opFor, hence should an unconditional exit(/opJmp) optimise away the opEndFor it all goes horribly wrong. Some of my past attempts to fix this have been less than spectacularly effective. What I think I need to do is split the opEndFor in two, with an opEndForFixup part that cannot get optimised away, if that makes any sense.

Anyway, in /home/tom/Documents/Rozne/Coding/Euphoria/pilx86.e you should find at line 4366:

```--25/10/17:
--/!* --(nope)
```

change that to "--/*" and the matching "--*!/" on line 4393 to "--*/" and (re-)run ./p -cp

That should fix the immediate problem, but it may re-introduce something else. Meanwhile I will keep working on this.

Thanks,
Pete