1. Euphoria 4.0 crashes (rev 1176)
- Posted by RStowasser Sep 16, 2008
- 1139 views
Hello
This is meant for the development team but I do not exactly know where to send this.
Something does not work correctly with Euphoria 4.0. I tried to run compat02.ew of Win32lib with Eu 40 rev 1176. I expected an error message like in Euphoria 3.1.1 but this is not the case.
Using Windows Vista and Euphoria 3.1.1 I will get this error, which is ok:
D:\Euphoria\win32libv07\Include\compat02.ew:4
w32from_memory has not been declared
return w32from_memory(ID_SYSTEMTIME, st )
^
Press Enter
With Euphoria 4.0 rev 1176 exw.exe crashes and there is a message from the OS:
EXW.EXE does not work any more (EXW.EXE funktioniert nicht mehr)
Using exwc.exe I get this result:
C:\EUPHORIA\SOURCE40>exwc
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? d:\euphoria\win32libv07\include\compat02.ew
The instruction at 0x0040dbba referenced memory at 0x00000270.
The memory could not be read.
Exception fielded by 0x0047ef10
EAX=0xfffffeff EBX=0x00000001 ECX=0x0000004e EDX=0x800392f4
ESI=0x0000004e EDI=0x00000000 EBP=0x0006f8bc ESP=0x0006f850
EIP=0x0040dbba EFL=0x00010213 CS =0x0000001b SS =0x00000023
DS =0x00000023 ES =0x00000023 FS =0x0000003b GS =0x00000000
Stack dump (SS:ESP)
0x00170000 0x001b6b50 0x00000000 0x00000000 0xfffffeff 0x0000060e
0x00000000 0x001b6ad0 0x00000000 0x001b6548 0x00000001 0x00000000
0x00000000 0x76f25883 0x00000001 0x00000000 0x00000000 0x00000000
0x75a7c56f 0x0000000b 0x00000142 0x001b6b48 0x00000000 0x00472ba3
0x00170000 0x00000000 0x001b6b50 0x80036d5b 0x80036d6a 0x00000001
0x0042ca50 0x00000000 0x00000018 0x0042c6b4 0x0000000b 0x00000000
0x00000002 0x00000000 0x0042ca50 0x00000000 0x00000018 0x0042c76a
0x00000002 0x00000000 0x0042ca50 0x00000000 0x00000018 0x0042c83e
0x0006f924 0x00000000 0x00000002 0x00000000 0x0042ca50 0x00000000
0x00000018 0x0042cb7b 0xffffffff 0x00000000 0x00000000 0x00000002
0x80036d38 0x0042ca50 0xffffffe2 0x00000018 0x00426c35 0x00000000
0x80036d51 0xffffffe8 0x0000000b 0x00000000 0x00000020 0x0042bf7a
C:\EUPHORIA\SOURCE40>
Trying to run compat02.ew with exwc.exe and eu.ex I get this result:
C:\EUPHORIA\SOURCE40>exwc
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? eu.ex
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? d:\euphoria\win32libv07\include\compat02.ew
.\emit.e:888 in procedure emit_op()
subscript value -257 is out of bounds, reading from a sequence of length 426
... called from .\parser.e:1237 in function aexpr()
... called from .\parser.e:1247 in function cexpr()
... called from .\parser.e:1270 in function rexpr()
... called from .\parser.e:1300 in procedure Expr()
... called from .\parser.e:604 in function Expr_list()
... called from .\parser.e:1161 in procedure Factor()
... called from .\parser.e:1209 in procedure UFactor()
... called from .\parser.e:1218 in function term()
... called from .\parser.e:1233 in function aexpr()
... called from .\parser.e:1247 in function cexpr()
... called from .\parser.e:1270 in function rexpr()
... called from .\parser.e:1300 in procedure Expr()
... called from .\parser.e:2699 in procedure Global_declaration()
... called from .\parser.e:3502 in procedure real_parser()
... called from .\parser.e:3685 in procedure parser()
... called from .\main.e:247 in procedure main()
... called from .\main.e:267
> See ex.err
Press Enter...
Trying to run exwc.exe then eu.ex in eu.ex I get this result:
C:\EUPHORIA\SOURCE40>exwc
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? eu.ex
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? eu.ex
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? d:\euphoria\win32libv07\include\compat02.ew
.\execute.e:1387 in procedure opSWITCH_SPI()
type_check failure, a is {403,391,394,385,393,392,407,403,391,393,390,...
... called from .\execute.e:3817 in procedure do_exec()
... called from .\execute.e:3983 in procedure Execute()
... called from .\execute.e:3991 in procedure BackEnd()
... called from .\mode.e:41 in procedure BackEnd()
... called from .\main.e:260 in procedure main()
... called from .\main.e:267
> See ex.err
Press Enter...
is this of any help? Btw I had to revert the changes in revget.ex because otherwise .svn/entries would not have been found.
Regards
Roland Stowasser
2. Re: Euphoria 4.0 crashes (rev 1176)
- Posted by bernie Sep 16, 2008
- 1094 views
- Last edited Sep 17, 2008
Hello
This is meant for the development team but I do not exactly know where to send this.
Something does not work correctly with Euphoria 4.0. I tried to run compat02.ew of Win32lib with Eu 40 rev 1176. I expected an error message like in Euphoria 3.1.1 but this is not the case.
Using Windows Vista and Euphoria 3.1.1 I will get this error, which is ok:
D:\Euphoria\win32libv07\Include\compat02.ew:4
w32from_memory has not been declared
return w32from_memory(ID_SYSTEMTIME, st )
^
Press Enter
With Euphoria 4.0 rev 1176 exw.exe crashes and there is a message from the OS:
EXW.EXE does not work any more (EXW.EXE funktioniert nicht mehr)
Using exwc.exe I get this result:
C:\EUPHORIA\SOURCE40>exwc
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? d:\euphoria\win32libv07\include\compat02.ew
The instruction at 0x0040dbba referenced memory at 0x00000270.
The memory could not be read.
Exception fielded by 0x0047ef10
EAX=0xfffffeff EBX=0x00000001 ECX=0x0000004e EDX=0x800392f4
ESI=0x0000004e EDI=0x00000000 EBP=0x0006f8bc ESP=0x0006f850
EIP=0x0040dbba EFL=0x00010213 CS =0x0000001b SS =0x00000023
DS =0x00000023 ES =0x00000023 FS =0x0000003b GS =0x00000000
Stack dump (SS:ESP)
0x00170000 0x001b6b50 0x00000000 0x00000000 0xfffffeff 0x0000060e
0x00000000 0x001b6ad0 0x00000000 0x001b6548 0x00000001 0x00000000
0x00000000 0x76f25883 0x00000001 0x00000000 0x00000000 0x00000000
0x75a7c56f 0x0000000b 0x00000142 0x001b6b48 0x00000000 0x00472ba3
0x00170000 0x00000000 0x001b6b50 0x80036d5b 0x80036d6a 0x00000001
0x0042ca50 0x00000000 0x00000018 0x0042c6b4 0x0000000b 0x00000000
0x00000002 0x00000000 0x0042ca50 0x00000000 0x00000018 0x0042c76a
0x00000002 0x00000000 0x0042ca50 0x00000000 0x00000018 0x0042c83e
0x0006f924 0x00000000 0x00000002 0x00000000 0x0042ca50 0x00000000
0x00000018 0x0042cb7b 0xffffffff 0x00000000 0x00000000 0x00000002
0x80036d38 0x0042ca50 0xffffffe2 0x00000018 0x00426c35 0x00000000
0x80036d51 0xffffffe8 0x0000000b 0x00000000 0x00000020 0x0042bf7a
C:\EUPHORIA\SOURCE40>
Trying to run compat02.ew with exwc.exe and eu.ex I get this result:
C:\EUPHORIA\SOURCE40>exwc
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? eu.ex
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? d:\euphoria\win32libv07\include\compat02.ew
.\emit.e:888 in procedure emit_op()
subscript value -257 is out of bounds, reading from a sequence of length 426
... called from .\parser.e:1237 in function aexpr()
... called from .\parser.e:1247 in function cexpr()
... called from .\parser.e:1270 in function rexpr()
... called from .\parser.e:1300 in procedure Expr()
... called from .\parser.e:604 in function Expr_list()
... called from .\parser.e:1161 in procedure Factor()
... called from .\parser.e:1209 in procedure UFactor()
... called from .\parser.e:1218 in function term()
... called from .\parser.e:1233 in function aexpr()
... called from .\parser.e:1247 in function cexpr()
... called from .\parser.e:1270 in function rexpr()
... called from .\parser.e:1300 in procedure Expr()
... called from .\parser.e:2699 in procedure Global_declaration()
... called from .\parser.e:3502 in procedure real_parser()
... called from .\parser.e:3685 in procedure parser()
... called from .\main.e:247 in procedure main()
... called from .\main.e:267
> See ex.err
Press Enter...
Trying to run exwc.exe then eu.ex in eu.ex I get this result:
C:\EUPHORIA\SOURCE40>exwc
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? eu.ex
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? eu.ex
Euphoria Interpreter 4.0 (development) for 32-bit Windows.
SVN Revision 1176
Copyright (c) Rapid Deployment Software 2008
See http://www.RapidEuphoria.com/License.txt
file name to execute? d:\euphoria\win32libv07\include\compat02.ew
.\execute.e:1387 in procedure opSWITCH_SPI()
type_check failure, a is {403,391,394,385,393,392,407,403,391,393,390,...
... called from .\execute.e:3817 in procedure do_exec()
... called from .\execute.e:3983 in procedure Execute()
... called from .\execute.e:3991 in procedure BackEnd()
... called from .\mode.e:41 in procedure BackEnd()
... called from .\main.e:260 in procedure main()
... called from .\main.e:267
> See ex.err
Press Enter...
is this of any help? Btw I had to revert the changes in revget.ex because otherwise .svn/entries would not have been found.
Regards
Roland Stowasser
Roland:
Did you build the EXW.EXE yourself or get it from some other person ?
If you built the EXW.EXE be certain all your std/include files are at the latest version number because there were changes to the parsing.
Try commenting out a few lines at a time and then try running compat02.ew
again and see if you can isolate the error that way.
3. Re: Euphoria 4.0 crashes (rev 1176)
- Posted by mattlewis (admin) Sep 16, 2008
- 1065 views
- Last edited Sep 17, 2008
Hello
This is meant for the development team but I do not exactly know where to send this.
The EuForum is fine.
Something does not work correctly with Euphoria 4.0. I tried to run compat02.ew of Win32lib with Eu 40 rev 1176. I expected an error message like in Euphoria 3.1.1 but this is not the case.
I see what the problem is in the parser. It's a consequence of the forward referencing updates. I recall Derek and Chris talking about some problems with compat02.ew and 4.0. It looks like something is undefined, though I'm not sure what. I'll defer to Chris and Derek regarding win32lib, as I haven't looked at it in a while.
Matt
4. Re: Euphoria 4.0 crashes (rev 1176)
- Posted by DerekParnell (admin) Sep 16, 2008
- 1111 views
- Last edited Sep 17, 2008
Something does not work correctly with Euphoria 4.0. I tried to run compat02.ew of Win32lib with Eu 40 rev 1176. I expected an error message like in Euphoria 3.1.1 but this is not the case.
Yes, there should be an error message issued, and I'm sure Matt will get on to that aspect.
If you really do want compat02.ew to parse you need to some things.
- Add "include win32lib.ew" to the beginning of "compat02.ew".
- Copy the 3.1.1 include files to the v4.0 include directory (but not the include/std directory of course).
The compat02.ew was never meant to be used in isolation from the win32lib include files. It was assumed that it would only be used in conjuction with ALL the other include files being present. That doesn't excuse the crash but does explain why there was a problem with it.
5. Re: Euphoria 4.0 crashes (rev 1176)
- Posted by RStowasser Sep 17, 2008
- 1071 views
Something does not work correctly with Euphoria 4.0. I tried to run compat02.ew of Win32lib with Eu 40 rev 1176. I expected an error message like in Euphoria 3.1.1 but this is not the case.
Yes, there should be an error message issued, and I'm sure Matt will get on to that aspect.
If you really do want compat02.ew to parse you need to some things.
- Add "include win32lib.ew" to the beginning of "compat02.ew".
- Copy the 3.1.1 include files to the v4.0 include directory (but not the include/std directory of course).
The compat02.ew was never meant to be used in isolation from the win32lib include files. It was assumed that it would only be used in conjuction with ALL the other include files being present. That doesn't excuse the crash but does explain why there was a problem with it.
compat02.ew was meant as an example. If I use compat01.ew I will get the expected result with or without the include w32tk.e statement:
D:\Euphoria\win32libv07\Include\compat01.ew:73
Errors resolving the following references:
D:\Euphoria\win32libv07\Include\compat01.ew (7): setPenPos
D:\Euphoria\win32libv07\Include\compat01.ew (12): setRect
D:\Euphoria\win32libv07\Include\compat01.ew (16): getCtlSize
D:\Euphoria\win32libv07\Include\compat01.ew (20): getRect
D:\Euphoria\win32libv07\Include\compat01.ew (24): setCtlSize
D:\Euphoria\win32libv07\Include\compat01.ew (28): setPointerPos
D:\Euphoria\win32libv07\Include\compat01.ew (32): getPointerPos
D:\Euphoria\win32libv07\Include\compat01.ew (36): clickPointerLeft
D:\Euphoria\win32libv07\Include\compat01.ew (40): dragPointerTo
D:\Euphoria\win32libv07\Include\compat01.ew (44): setPenPos
D:\Euphoria\win32libv07\Include\compat01.ew (49): insertLVColumn
D:\Euphoria\win32libv07\Include\compat01.ew (53): getPointerPos
D:\Euphoria\win32libv07\Include\compat01.ew (57): getPointerRelPos
D:\Euphoria\win32libv07\Include\compat01.ew (61): setPenMode
D:\Euphoria\win32libv07\Include\compat01.ew (65): limitText
D:\Euphoria\win32libv07\Include\compat01.ew (69): getCurrentDirectory
D:\Euphoria\win32libv07\Include\compat01.ew (73): setCurrentDirectory
setCurrentDirectory(x) ^
Press Enter
So sometimes parsing works and sometimes not.
Roland
6. Re: Euphoria 4.0 crashes (rev 1176)
- Posted by mattlewis (admin) Sep 17, 2008
- 1029 views
compat02.ew was meant as an example. If I use compat01.ew I will get the expected result with or without the include w32tk.e statement:
<snip>
So sometimes parsing works and sometimes not.
Yes, there were several places where emit wasn't properly considering possible forward references (which is what typos or non-existent symbols look like before the end of your code is reached). I've gone through the file, and I think they're all accounted for now.
r1177 should not crash when parsing (at least, not because of these issues). Thanks for the report.
Matt
7. Re: Euphoria 4.0 crashes (rev 1176)
- Posted by DerekParnell (admin) Sep 17, 2008
- 1023 views
r1177 should not crash when parsing (at least, not because of these issues). Thanks for the report.
Confirmed. Rev 1177 issues messages now rather than crashing.
8. Re: Euphoria 4.0 crashes (rev 1176)
- Posted by bernie Sep 17, 2008
- 1030 views
Yes, there were several places where emit wasn't properly considering possible forward references (which is what typos or non-existent symbols look like before the end of your code is reached). I've gone through the file, and I think they're all accounted for now.
r1177 should not crash when parsing (at least, not because of these issues). Thanks for the report.
Updated to WIN98 svn 1177.
Thanks Matt, Derek, et all !
Bernie