lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


I am compiling lua 3.0a with Symantec C++ 7.21 under DOS and using a 
DOS extender to build a 32 bit version.

I have succeeded with this using lua 2.5

With the new version it compiles O.K. and I can build lua.exe

When I run it it fails to look up variables which have been assigned

e.g.

a = 1
print (type(a))
nil

This means that e.g. table assignment always fails

e.g.

a = {}
print (type(a))
nil
a[1] = 1   fails

The code runs O.K. under linux.

I think this problem must be occuring because some statement 
in the code depends upon the order of evaluation of its parts.  I 
have met this in the past with statements like

x[i] = y[i--];

where some compilers change i before storing to x[i].

I have looked in the code of OPCODE.C and compared it with the 2.5 
code in search of a candidate for the cause without success.  I 
compared it with the old version and a great deal has changed in the 
routines here.

I need some help to track this down.

Thanks

John Fletcher

---------------------------------------------------------------------
Dr John P. Fletcher          Tel: (44) 121 359 3611 ext 4625
Department of Chemical Engineering and Applied Chemistry (CEAC),
Aston University,            Fax: (44) 121 359 4094
Aston Triangle,              Email: J.P.Fletcher@ASTON.AC.UK
BIRMINGHAM B4 7ET  U.K.   
---------------------------------------------------------------------
CEAC Web site http://www.ceac.aston.ac.uk/
---------------------------------------------------------------------