VSI BASIC V1.10-001 for OpenVMS x86-64
Release Notes
- Operating System:
- VSI OpenVMS x86-64 Version 9.2-3 or higher
1. Overview of VSI BASIC
This document contains information about VSI BASIC V1.10-001 including new and changed features, differences between V1.10-001 and previous versions, corrections included, and other topics. This file is of interest to both system managers and application programmers.
VSI BASIC V1.10-001 is a release of BASIC on OpenVMS x86-64. It is based on VSI BASIC on OpenVMS IA-64 for source compatibility. There may be platform-specific features from OpenVMS Alpha and OpenVMS IA-64 that may not be supported.
The compiler requires OpenVMS x86-64 version 9.2-3 or higher.
The prior BASIC V1.9 kit contained a private RTL that matched the compiler as some of the interfaces changed in size to allow for 64-bit code addresses. This RTL is now available in OpenVMS V9.2-3 (with even more fixes than the version in the V1.9 kit). To prevent confusion with getting the right RTL, the V1.10 kit simply requires OpenVMS V9.2-3.
Images built with the V1.9 compiler and running on OpenVMS V9.2-2 will continue to work on OpenVMS V9.2-3.
The BASIC/VERSION
string is:
VSI BASIC V1.10-001 (GEM 50nnn) on OpenVMS x86-64 Systems
2. VSI BASIC Documentation
The VSI BASIC documentation set on the VSI website (https://docs.vmssoftware.com/) has not yet been updated with x86-64 support. It will be updated in the next several months.
3. VSI BASIC for x86-64 Systems Known Issues
The
/MACHINE_CODE
qualifier is ignored. Use theANALYZE/OBJECT/DISASSEMBLE
command to produce a list of the machine code instructions generated by the compiler.The
/SEPARATE_COMPILATION
qualifier is ignored. We will investigate how to implement this feature with the LLVM code generator.XFLOAT floating is not currently supported due to missing support in the BASIC RTL, the Math RTL, and in conversion routines in LIBRTL.EXE. All of this will be provided in a future release.
The compiler does not produce a warning on decimal overflow in an initializer.
The compiler does not generate full debug information, but it is much improved over the V1.9 release. In addition, the debugger in OpenVMS V9.2-3 contains additional fixes for BASIC.
4. Problems Corrected Since Field Test of VSI BASIC
Correctly detect and signal integer divide by zero errors.
The compiler would generate invalid DWARF for certain filenames, resulting in incorrect source line debugger. This problem has been fixed.
The compiler would generate invalid DWARF for STRING variables. This problem has been fixed.
The compiler could run out of memory and ACCVIO if the BASIC source contained a very large variable that was initialized at compile-time. This problem has been fixed.
The compiler created a memory leak when using the WHEN ERROR clause, resulting in an ACCVIO. This problem has been fixed.
Various bugs related to optimizations found by other compilers are also included.