1. EuCOM and Interpreter Bugginess
- Posted by "Elliott S. de Andrade" <quantum_analyst at hotmail.com> Jun 03, 2004
- 534 views
There's something very strange going on here. If I run EuCOM.ew (in a program or by itself to test), there are some weird results when there are missing include files. If unicode.ew is missing, it works correctly. Namely, it prints out that it can't find unicode.ew and waits. If, however, unicode.ew exists and variant.ew or comerr.ew do not, the interpreter does not error out properly. Initially, it prints out the name and EUINC path, but before it can print out what the error really is, another machine error occurs. This prints out its own message, which would be alright, but then it procedes to crash entirely, without writing an ex.err. The strange thing is: a) there is no code between the include statements for unicode.ew, variant.ew, and comerr.ew, b) there is no code executed in unicode.ew that could cause this sort of problem (there are only function links), and c) of course the fact that the interpreter decides to royally crash too. PS. Matt, you really should add "without warning" when you release EuCOM. PPS. Matt, I didn't know you were an actor in disguise: http://www.imdb.com/name/nm0507535/
2. Re: EuCOM and Interpreter Bugginess
- Posted by Robert Craig <rds at RapidEuphoria.com> Jun 04, 2004
- 575 views
Elliott S. de Andrade wrote: > There's something very strange going on here. If I run EuCOM.ew (in a > program or by itself to test), there are some weird results when there are > missing include files. If unicode.ew is missing, it works correctly. Namely, > it prints out that it can't find unicode.ew and waits. If, however, > unicode.ew exists and variant.ew or comerr.ew do not, the interpreter does > not error out properly. Initially, it prints out the name and EUINC path, > but before it can print out what the error really is, another machine error > occurs. This prints out its own message, which would be alright, but then it > procedes to crash entirely, without writing an ex.err. When a machine-level exception occurs, there is no guarantee that the interpreter will be able to complete the process of writing ex.err, without itself crashing. Things may be too corrupted in memory. Just by trying to unwind the call stack or print a variable, the interpreter might use a pointer that the application corrupted. Actually, there is always a remote chance that an application that uses pokes etc, will corrupt things badly enough that the interpreter will not be able to terminate properly with an ex.err. But it's especially likely when a machine-level exception is reported. Regards, Rob Craig Rapid Deployment Software http://www.RapidEuphoria.com
3. Re: EuCOM and Interpreter Bugginess
- Posted by "Elliott S. de Andrade" <quantum_analyst at hotmail.com> Jun 04, 2004
- 579 views
>From: Robert Craig <guest at RapidEuphoria.com> >Reply-To: EUforum at topica.com >To: EUforum at topica.com >Subject: Re: EuCOM and Interpreter Bugginess >Date: Thu, 03 Jun 2004 17:37:27 -0700 > >posted by: Robert Craig <rds at RapidEuphoria.com> > >Elliott S. de Andrade wrote: [ There was stuff from me written here before. ] > >When a machine-level exception occurs, there is no guarantee that >the interpreter will be able to complete the process of writing >ex.err, without itself crashing. Things may be too corrupted in memory. >Just by trying to unwind the call stack or print a variable, >the interpreter might use a pointer that the application >corrupted. > >Actually, there is always a remote chance that an application >that uses pokes etc, will corrupt things badly enough that >the interpreter will not be able to terminate properly with an ex.err. >But it's especially likely when a machine-level exception is reported. > Yes, I realize that may happen. The strange thing of course is when it happens. Why would it print out two error messages? Eucom.ew is laid out like this:
include get.e include dll.e include machine.e include tk_mem.e as mem include fptr.e as fptr include unicode.ew as u include variant.ew as v include file.e include comerr.ew as err
Now, if anything above variant.ew is missing, the error message is printed out correctly. For missing variant.ew or comerr.ew, both could cause a machine exception to occur. However, if file.e is missing, the error message is printed correctly, without a crash. This appears to be some sort of namespacing parsing error. There is almost no code in Eucom to poke anything in memory at the time. None of the functions have been called, I'm just running "exw eucom.ew". The only thing that happens is the allocating space for the assembler code, which should be well tested and not cause errors. I looked over it myself, too; seems fine. The only other place with poking (an init section) does not change the double-error problem if commented out. I know for certain these are the only places accessing memory because I've profiled the code to see. >Regards, > Rob Craig > Rapid Deployment Software > http://www.RapidEuphoria.com
4. Re: EuCOM and Interpreter Bugginess
- Posted by Matt Lewis <matthewwalkerlewis at yahoo.com> Jun 04, 2004
- 491 views
Elliott S. de Andrade wrote: > > There's something very strange going on here. If I run EuCOM.ew (in a > program or by itself to test), there are some weird results when there are > missing include files. If unicode.ew is missing, it works correctly. Namely, > it prints out that it can't find unicode.ew and waits. If, however, > unicode.ew exists and variant.ew or comerr.ew do not, the interpreter does > not error out properly. Initially, it prints out the name and EUINC path, > but before it can print out what the error really is, another machine error > occurs. This prints out its own message, which would be alright, but then it > procedes to crash entirely, without writing an ex.err. > The strange thing is: a) there is no code between the include statements for > unicode.ew, variant.ew, and comerr.ew, b) there is no code executed in > unicode.ew that could cause this sort of problem (there are only function > links), and c) of course the fact that the interpreter decides to royally > crash too. That's really odd. I've never had a problem like this...What are you running (machine/OS)? > PS. Matt, you really should add "without warning" when you release EuCOM. Yes, I usually put that into things, so this was likely a little oversight. > PPS. Matt, I didn't know you were an actor in disguise: > <a > href="http://www.imdb.com/name/nm0507535/">http://www.imdb.com/name/nm0507535/</a> Oh, well, you found me. :P Matt Lewis
5. Re: EuCOM and Interpreter Bugginess
- Posted by "Elliott S. de Andrade" <quantum_analyst at hotmail.com> Jun 04, 2004
- 493 views
>From: Matt Lewis <guest at RapidEuphoria.com> >Reply-To: EUforum at topica.com >To: EUforum at topica.com >Subject: Re: EuCOM and Interpreter Bugginess >Date: Fri, 04 Jun 2004 03:52:45 -0700 > >posted by: Matt Lewis <matthewwalkerlewis at yahoo.com> > >Elliott S. de Andrade wrote: > > [some stuff I had said. go look on the forum to see what it was....;)] > >That's really odd. I've never had a problem like this...What are you >running (machine/OS)? > I'm running Windows XP Pro. Also, as I mentioned in the other e-mail, this error doesn't happen when file.e is missing. Well, I was wrong about that, the error occurs there as well. So, it seems, nothing wrong with namespacing (darn, Eu still doesn't have a bug ;), just some sort of bug in EuCOM. ~[ WingZone ]~ http://wingzone.tripod.com/