1. RC1 bind errors on Linux

Hi

Installed generic Linux version on Ubuntu 8.10

  • Interpreted programs run fine (eui anyprogram)
  • Translated programs run fine (euc anyprogram)
  • Bound programs fail with a bad il opcode, eg

Fatal run time error: 
BAD IL OPCODE: i is 1219, word is 3356 (max=2315), len is -1208911631 

Binding other programs also produces bad il opcodes, but with different (or no) following message.

Binding with -full_debug makes no difference.

Chris

new topic     » topic index » view message » categorize

2. Re: RC1 bind errors on Linux

ChrisB said...

Hi

Installed generic Linux version on Ubuntu 8.10

  • Interpreted programs run fine (eui anyprogram)
  • Translated programs run fine (euc anyprogram)
  • Bound programs fail with a bad il opcode, eg

Fatal run time error: 
BAD IL OPCODE: i is 1219, word is 3356 (max=2315), len is -1208911631 

Binding other programs also produces bad il opcodes, but with different (or no) following message.

Binding with -full_debug makes no difference.

Chris

This is now fixed in trunk and will be fixed in tomorrow's eubins and in the next release.

new topic     » goto parent     » topic index » view message » categorize

3. Re: RC1 bind errors on Linux

Hi

Updated with Nov 17th eubins, including updating my Include from the include Include folder, and now get the following error, during bindng,

/home/crylex/euphoria/source/parser.e:4685 
<0074>:: Errors resolving the following references: 
	../../source/parser.e (4685): replace_all 
 
				CompileErr(117, {replace_all(find_token_text(id), "'", "")}) 
				                            ^ 
 
 
--- Defined Words --- 
EU4 
EU4_0 
EU4_0_0 
UNIX 
LINUX 
EUI 
EU_FULL_RELEASE 
------------------- 
 

Cheers

Chris

new topic     » goto parent     » topic index » view message » categorize

4. Re: RC1 bind errors on Linux

ChrisB said...

Hi

Updated with Nov 17th eubins, including updating my Include from the include Include folder, and now get the following error, during bindng,

/home/crylex/euphoria/source/parser.e:4685 
<0074>:: Errors resolving the following references: 
	../../source/parser.e (4685): replace_all 
 
				 

Cheers

Chris

replace_all is gone. you may exchange replace_all with match_replace, rearranging the first 2 parameters anywhere replace_all is used.

otherwise, you would have to update the source directory in this case.

new topic     » goto parent     » topic index » view message » categorize

5. Re: RC1 bind errors on Linux

Hi

As far as I remember, I updated the source from the last RC release, which means the RC needs to be updated in order to have a complete and correct installation set.

Chris

new topic     » goto parent     » topic index » view message » categorize

6. Re: RC1 bind errors on Linux

SVN head has all instances of remove_all changed to match_find(). RC1 was released with remove_all and then the bug was found. The problem was a duplicate function. match_replace did the exact thing with additional functionality, the naming is more euphoric and it's parameter order is correct based on all of our other methods, i.e. key, haystack, ... ... thus before replace_all got into serious use, it was removed. It was unfortunate that it was not caught until post RC status.

Jeremy

new topic     » goto parent     » topic index » view message » categorize

7. Re: RC1 bind errors on Linux

jeremy said...

It was unfortunate that it was not caught until post RC status.

Jeremy

But inevitable! Glad to be of service.

Cheers

Chris

new topic     » goto parent     » topic index » view message » categorize

8. Re: RC1 bind errors on Linux

Hi

Has this been fixed yet? I still can't bind on Linux (I have updated the eubins daily, and with the (hopefully) most up to dat source from the svn trunk http://rapideuphoria.svn.sourceforge.net/viewvc/rapideuphoria/trunk/source/).

The parser / replace_all() error as been resolved.

Cheers

Chris

(I've just re read that and realised that written it sounds like nagging - not meant to, honest)

Chris

new topic     » goto parent     » topic index » view message » categorize

9. Re: RC1 bind errors on Linux

ChrisB said...

Hi

Has this been fixed yet? I still can't bind on Linux (I have updated the eubins daily, and with the (hopefully) most up to dat source from the svn trunk http://rapideuphoria.svn.sourceforge.net/viewvc/rapideuphoria/trunk/source/).

The parser / replace_all() error as been resolved.

Cheers

Chris

(I've just re read that and realised that written it sounds like nagging - not meant to, honest)

Chris

If you're getting the bad il opcode with the latest from trunk and the latest eubins, then we have a problem that we don't know about.

new topic     » goto parent     » topic index » view message » categorize

10. Re: RC1 bind errors on Linux

Hi

Just rolled back to r3416 (bin, include, source), that's binding fine

Updated the source to current trunk - tried binding again - obviously lots of changes incompatible with r 3416, so rolled back to previous source.

Anything I can do to help - all the Linux programs I have written produce the same bad IL opcode result after binding.

Chris

new topic     » goto parent     » topic index » view message » categorize

11. Re: RC1 bind errors on Linux

ChrisB said...

Hi

Just rolled back to r3416 (bin, include, source), that's binding fine

Updated the source to current trunk - tried binding again - obviously lots of changes incompatible with r 3416, so rolled back to previous source.

Anything I can do to help - all the Linux programs I have written produce the same bad IL opcode result after binding.

Chris

What kind of errors are you getting? Is it just needing to tweak your code to get rid of replace_all(), etc?

I just tried trunk (svn:4209) and it bound eu.ex, and ran it. No problems.

new topic     » goto parent     » topic index » view message » categorize

12. Re: RC1 bind errors on Linux

Hi

The error's the same as before, ie

ChrisB said...

Fatal run time error: 
BAD IL OPCODE: i is 1219, word is 3356 (max=2315), len is -1208911631 

the parsing error (replace_all) has been resolved. None of my code uses replace_all.

However, there could be a gotcha. I use the old 3.xx includes, and not the newer std\* includes. I simply have not had a need (time / inclination) to update the vet program to use the newer includes. Could this be a problem? Bearing in mind it translates and interprets ok.

new topic     » goto parent     » topic index » view message » categorize

13. Re: RC1 bind errors on Linux

ChrisB said...

Hi

The error's the same as before, ie

ChrisB said...

Fatal run time error: 
BAD IL OPCODE: i is 1219, word is 3356 (max=2315), len is -1208911631 

Does it happen if you use -shroud_only, and manually run the resulting .il file manually with eub ?

ChrisB said...

the parsing error (replace_all) has been resolved. None of my code uses replace_all.

However, there could be a gotcha. I use the old 3.xx includes, and not the newer std\* includes. I simply have not had a need (time / inclination) to update the vet program to use the newer includes. Could this be a problem? Bearing in mind it translates and interprets ok.

I don't believe so, no.

new topic     » goto parent     » topic index » view message » categorize

14. Re: RC1 bind errors on Linux

jimcbrown said...

Does it happen if you use -shroud_only, and manually run the resulting .il file manually with eub ?

Hi

No, that works

Chris

new topic     » goto parent     » topic index » view message » categorize

15. Re: RC1 bind errors on Linux

ChrisB said...
jimcbrown said...

Does it happen if you use -shroud_only, and manually run the resulting .il file manually with eub ?

Hi

No, that works

Chris

My conclusion is that bind.ex is somehow, for some reason, picking the wrong version of eub to bind against. It must be binding against an older version that had the bug.

new topic     » goto parent     » topic index » view message » categorize

16. Re: RC1 bind errors on Linux

Hi

I'm pretty sure it isn't.

I've tried bind jetvet.exu, bindu jevet.ex, eui $EUDIR/source/bind.ex ./jetvet.exu, eubind jetvet - all produce the same result - they seem to bind ok, but the resulting executable halts with the bad opcode.

As an aside, it may be worthwhile doing a bit more reporting with eubind / bind / bindu, so that it reports which version is actually doing the binding, and perhaps even to report it when translating and compiling (I know it does so already, but also a little announcement at the start, just like it announces where the build directory is.

Chris

new topic     » goto parent     » topic index » view message » categorize

17. Re: RC1 bind errors on Linux

ChrisB said...

Hi

I'm pretty sure it isn't.

I've tried bind jetvet.exu, bindu jevet.ex, eui $EUDIR/source/bind.ex ./jetvet.exu, eubind jetvet - all produce the same result - they seem to bind ok, but the resulting executable halts with the bad opcode.

As an aside, it may be worthwhile doing a bit more reporting with eubind / bind / bindu, so that it reports which version is actually doing the binding, and perhaps even to report it when translating and compiling (I know it does so already, but also a little announcement at the start, just like it announces where the build directory is.

Chris

If this works:

eui $EUDIR/source/bind.ex -shroud_only ./jetvet.exu 
eub jetvet.il 

Then this should also work:

eui $EUDIR/source/bind.ex -eub `which eub` ./jetvet.exu 
new topic     » goto parent     » topic index » view message » categorize

18. Re: RC1 bind errors on Linux

Hi

Yes, that's it, it was binding against an old version in /usr/bin, which I had done as a test to try out the new directory structure, which I wasn't to keen on, so I switched back to user space, without dumping the old euphoria.

Sorry, and many thanks Jim.

Chris

new topic     » goto parent     » topic index » view message » categorize

19. Re: RC1 bind errors on Linux

ChrisB said...

Hi

Yes, that's it, it was binding against an old version in /usr/bin, which I had done as a test to try out the new directory structure, which I wasn't to keen on, so I switched back to user space, without dumping the old euphoria.

Sorry, and many thanks Jim.

Chris

Glad I could help, and very grateful for the bug reports (as always).

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu