[Win98 Setup Bug]
Bug fixes and new features.
- Now you can have a SETUP.EXE for Windows to ease installation and also uninstall.
- On Linux and Windows you can compile your BASIC program into standalone executable without needing any C compiler.
- Source structure and compilation was refined to help compilation on platform where no precompiled binary is available.
- Compilation is driven by Jamal macro extended makefiles that let us use the same source for the makefiles on UNIX and on Windows.
- Allocation routines now allocate less gap in structures on 32bit systems.
- BASIC program source inclusion is limited to 1000 levels to avoid infinite loops in the reader.
- Modification of the Berkeley DB 4.1.24 are supported and the precompiled binaries include the 4.1.24 version of the DB.
- Under UNIX curses and PostgreSQL module is available. Also one may try to compile the ODBC module under UNIX supporting UnixODBC. (It was tested by a student and I could not recompile it on my Linux box. Maybe I need a different version of UnixODBC.)
- Allocation routines allocated a few bytes more than needed in earlier version. When this was corrected it turned out that a lot of places ScriptBasic C code indexes memory by one byte more than allocated. These were fixed.
- Memory allocation code myalloc.c merged the segments good, but the size of the merged segment was calculated bad. This was corrected in build30.
- Syntax analysis code used the memory allocation module erroneous and deallocated some memory block from a segment it did not belong to. This causes harm only if the deallocated block is the first one on the segment. This rarely happened for memory space allocated to store module name space string, but in some weird examples it caused segmentation fault on Linux and infinite loop on NT. Now this is corrected.
- Setting file time failed on directories and on read-only files. Now this succeeds. The second one may not have been a bug.
- Programs that contained no any string could be executed only from source and not from cache. Now this is corrected.
- Some Solaris users reported that alignment was not correct on their platform. Their code suggestion was incorporated into the code.
- The BASIC function ERROR() returned random value so long as long no error happened. Now it returns zero.
- The ScriptBasic source reader code could not include files that started with ../.. This was corrected.
Still you may be interested reading the old news of previous builds.