COBOL and OpenJDK for x86 are available

Sep 11th, 2023

COBOL and OpenJDK for x86 are available

VMS Software, Inc. is glad to announce availability of OpenJDK and the COBOL compiler on x86.

The initial field test version of VSI COBOL of X3.2-0001 is now available for community users and commercial customers. The x86 build is based on VSI COBOL for OpenVMS I64 for source compatibility. The following list of issues applies to this version:

  • Some of the run-time overflow checking has not been implemented.
  • Debug support is not fully implemented.
  • The /OPTIMIZE qualifier does not fully work, even though the compiler provides some level of optimization.
  • There is no support for converting from text to D_FLOAT and vice versa. All conversion is done via G_FLOAT routines.
  • The /MACHINE_CODE qualifier is ignored. Instead, the $ ANALYZE/OBJECT/DISASSEMBLE command can be used to generate a list of the machine code instructions generated by the compiler.

These issues may be fixed in future releases.

It is strongly recommended that you install update kit V9.2-1 Update 1 before installing this compiler on your system.

Another very important kit that we are extremely happy to announce is OpenJDK V8.0-372A for OpenVMS for Integrity and x86. While this version is an update over V8.0-342A on Integrity, this is the initial field test version on x86-64 that many of our customers were long waiting for. This kit makes it possible to develop and run Java-based applications on OpenVMS for x86. The same installation requirements as on Integrity apply to the kit on x86, so follow the product page linked above. The kit can only be installed on OpenVMS V8.4-2L1 and higher for Integrity and OpenVMS x86 V9.2-1.

Known issues specific for the x86 build:

  • When trying to work with fonts from the FreeType library or pictures in jpg format, errors may occur.
  • The exception is sometimes thrown on JVM exit.

    %NONAME-F-NOMSG, Message number 05F78414
    Improperly handled condition, image exit forced by last chance handler.
    

This kit fixes the following issues found after V8.0-342A for I64:

  • Numerous bugfixes, including the security fixes - CVE-2023-21930, CVE2023-21937, CVE-2023-21938, CVE-2023-21939, CVE-2023-21954, CVE-2023-21967, CVE-2023-21968.
  • Redirection of stdin and stdout to/from files. Starting with this version, it became possible to use execute code as in the example below:

    ProcessBuilder builder = new ProcessBuilder("child.exe");
    File out = new File("childlog.txt");
    builder.redirectOutput(out);
    
  • An attempt to write to a closed pipe resulted in the %C-F-SIGPIPE, broken pipe exception. Now the correct java.io.IOException: broken pipe message is displayed in this case.

  • A bug in the string conversion module that was causing a memory leak.

The kits for x86 are available from VSI Service Portal, and the OpenJDK release for Integrity is available from the product page on our website. Please report any found issues with these products through the Portal issue reporting mechanism if you are a customer or on our official forum if you are a community member.

We also keep working on other compilers for x86, and in the meantime, we released several updates for the C++, Pascal, and Fortran compilers in June and August that fixed numerous issues, including those reported by our customers and community.