Re: bug in the intinit.e file
- Posted by jimcbrown (admin) Oct 08, 2010
- 1098 views
On Linux, but I can not reproduce these steps with eui r3414.
cp -a /home/eu/source/global.e /home/eu/source/keylist.e /home/eu/source/scanner.e /home/eu/source/parser.e /home/eu/source/emit.e /home/eu/source/pathopen.e /home/eu/source/eu.ex /home/eu/source/reswords.e /home/eu/source/error.e /home/eu/source/main.e /home/eu/source/opnames.e /home/eu/source/execute.e /tmp/y/ cd /tmp/y EUDIR=/home/eu EUINC=/home/eu/include:/home/eu/source eui eu.ex
This gives me the help screen - or the display of the list of options.
bugfinder said...
There is a bug in the intinit.e file at line 60 when Argv = {} the slice will cause an error condition. I am running the eu.ex files in a directory other than the source directory. NOTE: I should get display of the options not a slice error. This other directory contains the following : global.e keylist.e symtab.e scanner.e parser.e emit.e pathopen.e eu.ex reswords.e error.e main.e opnames.e execute.e Enviroment: E:\WORKCDE4>set eudir EUDIR=E:\EU4 E:\WORKCDE4>set euinc EUINC=E:\EU4\include;E:\EU4\source;E:\EU4\MTRINC
This will work OK running from the source directory. 55: Argv = expand_config_options(Argv) 56: m:map opts = cmd_parse( get_options(), 57: { NO_VALIDATION_AFTER_FIRST_EXTRA, PAUSE_MSG, pause_msg 58: trace(1) 59: sequence tmp_Argv = Argv 60==> Argv = Argv[1..2] & GetDefaultArgs() 61: Argc = length(Argv) 62: 63: m:map default_opts = cmd_parse( get_options(), , Argv ) 64: merge_maps( opts, default_opts ) 65: 66: Argv = tmp_Argv 67: Argc = length( Argv ) 68: variable name? Argv Argv={{101e,58:,92\,101e,117u,524,92\,98b,105i,110n,92\,101e,117u,105i,46.,...
This will FAIL running eu.ex from the different directory with source directory set in the path. 55: Argv = expand_config_options(Argv) 56: m:map opts = cmd_parse( get_options(), 57: { NO_VALIDATION_AFTER_FIRST_EXTRA, PAUSE_MSG, pause_msg 58: trace(1) 59: sequence tmp_Argv = Argv 60==> Argv = Argv[1..2] & GetDefaultArgs() 61: Argc = length(Argv) 62: 63: m:map default_opts = cmd_parse( get_options(), , Argv ) 64: merge_maps( opts, default_opts ) 65: 66: Argv = tmp_Argv 67: Argc = length( Argv ) 68: variable name? Argv Argv={}