Copyright © 2003 Compaq Computer Corporation 13-Jul-2003 0.0 HP Fortran V5.5A for Compaq Tru64 UNIX Alpha Systems These are the release notes for the release kit of Version V5.5A of HP Fortran for Compaq Tru64 UNIX Alpha Systems. It contains bug fixes and performance enhancements to the current versions of HP Fortran for Alpha/UNIX. In this release, the "f77" command will execute the HP Fortran 90 compiler instead of the HP Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common HP Fortran RTL since the Compaq Fortran V5.5 ECO 01 release. Previous versions of these release notes for V5.5 ECO 01, V5.5, V5.4A ECO #1, V5.4A, V5.4, V5.3 ECO 02, V5.3 ECO 01, V5.3, V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO V5.5 will run on Tru64 UNIX v4.0 or later systems. The compilers and run-time libraries in this release will not work on Tru64 UNIX systems older than V4.0. DFAO V5.0, V5.1, V5.2, V5.3, V5.4, V5.4A, and V5.5 have this same restriction. 0.1 Installation The DFAO V5.5A native software is a setld kit. It contains the following subsets: DFABASE55A HP Fortran 90 and 77 V5.5A for Compaq Tru64 UNIX Alpha Systems DFADOC55A HP Fortran V5.5A Release Notes and Man Page DFACOM55A HP Fortran V5.5A Tools & their Man Pages DFARTL406 HP Fortran RTL #406 for Compaq Tru64 UNIX Alpha Systems (f90 and f77) HPFLIBS192 Compaq Fortran V5.5A High Performance Fortran Runtime Libraries V1 XMDCOM520 the CXML common subset files XMDLIB4520 the CXML archive and shared libraries (serial and parallel) for EV4 systems XMDLIB5520 the CXML archive and shared libraries (serial and parallel) for EV5 systems XMDLIB652510 the CXML archive and shared libraries (serial and parallel) for EV6 systems XMDSCI520 the SCIPORT Cray compatibility library and manpages XMDMAN520 the CXML manpages XMDHTM520 the CXML manpages in HTML format OTABASE220 {Compaq Compiled Code Support Library #220 - libots3.a V2.1-120 GEM 24 Jan 2002 } is no longer part of this kit. For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the HP Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com 0.2 DFAO Files The following files and their what(1) strings are included in the V5.5A release: decfort HP Fortran 77 V5.5A-198 -48D6R fort HP Fortran 77 Driver V5.5A-14 decfort90 HP Fortran 90 Compiler V5.5A-3469 -48D6R f90, f95, f77 HP Fortran Driver V5.5A-3469 f90_split Compaq Fortran 90 File Splitter V5.5A-9 fpr Compaq Fortran Printer Driver V5.5A-5 fsplit Compaq Fortran 77 File Splitter V5.5A-11 fpp Compaq Fortran Preprocessor V5.5A-25 DFARTL406 contains libFutil.a Compaq Convert RTL V1.1-106 1+ 1-aug-2001 libUfor.a Compaq Fortran Unsupported RTL V1.1-41 1+ 10-Apr-2003 libfor.a Compaq Fortran RTL V1.1-925 1+ 10-Apr-2003 libFutil.so Compaq Convert RTL V1.1-106 1+ 1-aug-2001 libUfor.so Compaq Fortran Unsupported RTL V1.1-41 1+ 10-Apr-2003 libfor.so Compaq Fortran RTL V1.1-925 1+ 10-Apr-2003 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-24 13-Oct-2000 for_main.o Compaq Fortran "main" program V1.0 0.3 What Has Changed in DFAO V5.5A from X5.5 ECO 1 o The following changes were made to the V5.5A decfort compiler -198 since edit -197 {X5.5 ECO 1}: - No changes o The following changes were made to the f77 driver: - No changes o The following changes were made to the run-time support in X5.5 ECO 1 between 27-Nov-2001 in -897 and 27-Aug-2002 in -913: - The access, chdir, chmod, link, lstat, rename, stat, symlnk, and o changes between 30-Aug-2003 in -913 and 11-Apr-2003 in -925: - kill(3f) maximum PID value is 2**31-1 as of v5 {not 2**15-1} (for3207 == PTR 221-1-1538) o The following changes to DFAO documentation should be noted: - No changes o Please note the following: - The fpp that ships with DFAO v5.4 and newer defaults to not doing cpp-style symbol substitution. Add "-Wp,-m" to the "f77 -fpp" line and that will pass the "-m" switch to fpp which tells fpp to do symbol substitution. - If the user tries to set the -tune command line option to an architecture that has fewer features than what the -arch command line option specifies, the compiler will reset -tune to the same architecure as -arch. - As of X5.3 ECO1, the "-fast" command line option automatically sets "-arch host -tune host", which affects on which hardware architectures the generated code will run. - As of v5.3, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** Copyright © 2002 Compaq Computer Corporation 14-Sep-2002 0.0 Compaq Fortran X5.5 ECO 1 for Compaq Tru64 UNIX Alpha Systems These are the release notes for the ECO 1 kit of Version V5.5 of Compaq Fortran for Compaq Tru64 UNIX Alpha Systems. It contains bug fixes and performance enhancements to the current versions of Compaq Fortran for Alpha/UNIX. In this release, the "f77" command will execute the Compaq Fortran 90 compiler instead of the Compaq Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common Compaq Fortran RTL since the Compaq Fortran V5.5 release. Previous versions of these release notes for V5.5, V5.4A ECO #1, V5.4A, V5.4, V5.3 ECO 02, V5.3 ECO 01, V5.3, V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO V5.5 will run on Tru64 UNIX v4.0 or later systems. The compilers and run-time libraries in this release will not work on Tru64 UNIX systems older than V4.0. DFAO V5.0, V5.1, V5.2, V5.3, V5.4, V5.4A, and V5.5 have this same restriction. 0.1 Installation The DFAO X5.5 ECO 1 native software is a setld kit. It contains the following subsets: DFABASE551 Compaq Fortran 90 and 77 X5.5 ECO 1 for Compaq Tru64 UNIX Alpha Systems DFADOC551 Compaq Fortran X5.5 ECO 1 Release Notes and Man Page DFACOM551 Compaq Fortran X5.5 ECO 1 Tools & their Man Pages DFARTL405 Compaq Fortran RTL #405 for Compaq Tru64 UNIX Alpha Systems (f90 and f77) OTABASE220 Compaq Compiled Code Support Library #220 HPFLIBS191 Compaq Fortran X5.5 ECO 1 High Performance Fortran Runtime Libraries V1 CXML is not part of this ECO. For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the Compaq Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com 0.2 DFAO Files The following files and their what(1) strings are included in the X5.5 ECO 1 release: decfort Compaq Fortran 77 X5.5-197 -48C8L fort Compaq Fortran 77 Driver X5.5-14 decfort90 Compaq Fortran 90 Compiler X5.5-2602 -48C8L f90, f95, f77 Compaq Fortran Driver V5.5-2602 f90_split Compaq Fortran 90 File Splitter V5.5-9 fpr Compaq Fortran Printer Driver V5.5-5 fsplit Compaq Fortran 77 File Splitter V5.5-11 fpp Compaq Fortran Preprocessor V5.5-25 DFARTL405 contains libFutil.a Compaq Convert RTL V1.1-106 1+ 1-aug-2001 libUfor.a Compaq Fortran Unsupported RTL V1.1-40 1+ 30-oct-2001 libfor.a Compaq Fortran RTL V1.1-913 1+ 8-Aug-2002 libFutil.so Compaq Convert RTL V1.1-106 1+ 1-aug-2001 libUfor.so Compaq Fortran Unsupported RTL V1.1-40 1+ 30-oct-2001 libfor.so Compaq Fortran RTL V1.1-913 1+ 8-Aug-2002 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-24 13-Oct-2000 for_main.o Compaq Fortran "main" program V1.0 OTABASE220 contains libots3.a: libots3.a V2.1-120 GEM 24 Jan 2002 libots3.so: libots3.a V2.1-120 GEM 24 Jan 2002 libots3_numa.a: libots3.a V2.1-120 (NUMA) GEM 24 Jan 2002 libots3_numa.so: libots3.a V2.1-120 (NUMA) GEM 24 Jan 2002 0.3 What Has Changed in DFAO X5.5 ECO 1 from V5.5 o The following changes were made to the X5.5 ECO 1 decfort compiler -197 since edit -197 {V5.5}: - No changes o The following changes were made to the f77 driver: - No changes o The following changes were made to the run-time support in X5.5 ECO 1 between 27-Nov-2001 in -897 and 27-Aug-2002 in -913: - The access, chdir, chmod, link, lstat, rename, stat, symlnk, and unlink routines did not handle file or directory names containing embedded blanks. (fn3001) - A file corruption problem with unformatted variable length sequential files has been fixed. This problem could occur when opening the file with buffering and then writing many items to a record. (fn2992) - An INQUIRE statement on one of the pre-connected units (0, 5, and 6) will now return that the unit it opened (among any other requested information) unless that unit has been explicitly close by the program. (dfb3621, fn3014) - The performance of unformatted write operations on larger block sizes has been tuned and shows increased performance. - List directed reads of multi-input-lines did not handle new lines and comma's correctly. For example: reading in an array of three integers specified as "1, 2 , 3" would be interpreted as 1,2,,3 instead of 1,2,3. (DVF3630) - The libfor.so file was linked against a version of the file libmld.a obtained from the DTK area. This was to eliminate a program hanging while trying to generate traceback support in a parallel application. - The rtl support for the CONVERT option on the OPEN statement and compile time command line option did not correctly implement the precedence and behavior described in the User's Guide for foreign files in unformatted IO. This problem was fixed in the Fortran rtl. (for3100) - The rtl support for the OPEN statement did not always record errno on a failed OPEN. This resulted in incorrect values reported by ERRSNS for the system error number associated with the Fortran OPEN statement. This problem was fixed in the Fortran rtl. (for3096) - The problem with flush(3f) not flushing the Fortran RTL buffers in a program compiled with -assume buffered_io has been fixed. [ft3118] o The following changes to DFAO documentation should be noted: - No changes o Please note the following: - The fpp that ships with DFAO v5.4 and newer defaults to not doing cpp-style symbol substitution. Add "-Wp,-m" to the "f77 -fpp" line and that will pass the "-m" switch to fpp which tells fpp to do symbol substitution. - If the user tries to set the -tune command line option to an architecture that has fewer features than what the -arch command line option specifies, the compiler will reset -tune to the same architecure as -arch. - As of X5.3 ECO1, the "-fast" command line option automatically sets "-arch host -tune host", which affects on which hardware architectures the generated code will run. - As of v5.3, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** Copyright © 2002 Compaq Computer Corporation 29-Nov-2001 1.0 Compaq Fortran V5.5 for Compaq Tru64 UNIX Alpha Systems These are the release notes for the release kit of Version V5.5 of Compaq Fortran for Compaq Tru64 UNIX Alpha Systems. It contains bug fixes, some new features, and performance enhancements to the current versions of Compaq Fortran for Alpha/UNIX. In this release, the "f77" command will execute the Compaq Fortran 90 compiler instead of the Compaq Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common Compaq Fortran RTL since the Compaq Fortran V5.4A ECO #1 release. Previous versions of these release notes for V5.4A ECO #1, V5.4A, V5.4, V5.3 ECO 02, V5.3 ECO 01, V5.3, V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO V5.5 will run on Tru64 UNIX v4.0 or later systems. The compilers and run-time libraries in this release will not work on Tru64 UNIX systems older than V4.0. DFAO V5.0, V5.1, V5.2, V5.3, V5.4, and V5.4A have this same restriction. 1.1 Installation The DFAO V5.5 native software is a setld kit. It contains the following subsets: DFABASE550 Compaq Fortran 90 and 77 V5.5 for Compaq Tru64 UNIX Alpha Systems DFADOC550 Compaq Fortran V5.5 Release Notes and Man Page DFACOM550 Compaq Fortran V5.5 Tools & their Man Pages DFARTL402 Compaq Fortran RTL #399 for Compaq Tru64 UNIX Alpha Systems (f90 and f77) OTABASE219 Compaq Compiled Code Support Library #219 HPFLIBS190 Compaq Fortran V5.4A ECO #1 High Performance Fortran Runtime Libraries V1 XMDCOM510 the CXML common subset files XMDLIB4510 the CXML archive and shared libraries (serial and parallel) for EV4 systems XMDLIB5510 the CXML archive and shared libraries (serial and parallel) for EV5 systems XMDLIB6510 the CXML archive and shared libraries (serial and parallel) for EV6 systems XMDSCI510 the SCIPORT Cray compatibility library and manpages XMDMAN510 the CXML manpages XMDHTM510 the CXML manpages in HTML format For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the Compaq Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com Note that the libraries {libots} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using Tru64 UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with Tru64 UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) 1.2 DFAO Files The following files and their what(1) strings are included in the V5.5 release: decfort Compaq Fortran 77 V5.5-197 -48BB1 fort Compaq Fortran 77 Driver V5.5-14 decfort90 Compaq Fortran 90 Compiler V5.5-1877 -48BBF f90, f95, f77 Compaq Fortran Driver V5.5-1877 f90_split Compaq Fortran 90 File Splitter V5.5-9 fpr Compaq Fortran Printer Driver V5.5-5 fsplit Compaq Fortran 77 File Splitter V5.5-11 fpp Compaq Fortran Preprocessor V5.5-25 DFARTL402 contains libFutil.a Compaq Convert RTL V1.1-106 1+ 1-aug-2001 libUfor.a Compaq Fortran Unsupported RTL V1.1-40 1+ 30-oct-2001 libfor.a Compaq Fortran RTL V1.1-897 1+ 27-nov-2001 libFutil.so Compaq Convert RTL V1.1-106 1+ 1-aug-2001 libUfor.so Compaq Fortran Unsupported RTL V1.1-40 1+ 30-oct-2001 libfor.so Compaq Fortran RTL V1.1-897 1+ 27-nov-2001 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-24 13-Oct-2000 for_main.o Compaq Fortran "main" program V1.0 OTABASE219 contains libots3.a: libots3.a V2.1-119 GEM 30 Oct 2001 libots3.so: libots3.a V2.1-119 GEM 30 Oct 2001 libots3_numa.a: libots3.a V2.1-119 (NUMA) GEM 30 Oct 2001 libots3_numa.so: libots3.a V2.1-119 (NUMA) GEM 30 Oct 2001 1.3 What Has Changed in DFAO V5.5 from X5.4A ECO #1 o The following changes were made to the T5.5 FT1 decfort compiler -197 since edit -197 {X5.4A ECO #1}: - No changes o The following changes were made to the T5.5 FT2 decfort compiler -197 since edit -197 {T5.5 FT1}: - No changes o The following changes were made to the V5.5 decfort compiler -197 since edit -197 {T5.5 FT2}: - No changes o The following changes were made to the f77 driver: - No changes o The following changes were made to the run-time support in T5.5 FT1 between 29-May-2001 in -864 and 8-Aug-2001 in -876: - None. o The following changes were made to the run-time support in T5.5 FT2 between 8-Aug-2001 in -876 and 13-Sep-2001 in -877: - None. o The following changes were made to the run-time support in V5.5 between 13-Sep-2001 in -877 and 3-Nov-2001 in -892: - None. o The following changes to DFAO documentation should be noted: - No changes o Please note the following: - The fpp that ships with DFAO v5.4 and newer defaults to not doing cpp-style symbol substitution. Add "-Wp,-m" to the "f77 -fpp" line and that will pass the "-m" switch to fpp which tells fpp to do symbol substitution. - If the user tries to set the -tune command line option to an architecture that has fewer features than what the -arch command line option specifies, the compiler will reset -tune to the same architecure as -arch. - As of X5.3 ECO1, the "-fast" command line option automatically sets "-arch host -tune host", which affects on which hardware architectures the generated code will run. - As of v5.3, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** Copyright © 2001 Compaq Computer Corporation 22-Jun-2001 0.0 Compaq Fortran V5.4A ECO #1 for Compaq Tru64 UNIX Alpha Systems These are the release notes for the ECO #1 update of Version v5.4A of Compaq Fortran for Compaq Tru64 UNIX Alpha Systems. It contains bug fixes, some new features, and performance enhancements to the current versions of Compaq Fortran for Alpha/UNIX. In this release, the "f77" command will execute the Compaq Fortran 90 compiler instead of the Compaq Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common Compaq Fortran RTL since the Compaq Fortran V5.4A release. Previous versions of these release notes for V5.4A, V5.4, V5.3 ECO 02, V5.3 ECO 01, V5.3, V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO v5.4A ECO #1 will run on Tru64 UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.4A will not work on Tru64 UNIX systems older than v4.0. DFAO v5.0, v5.1, v5.2, v5.3, v5.4, and v5.4A have this same restriction. 0.1 Installation The DFAO v5.4A ECO #1 native software is a partial setld kit. It contains the following subsets: DFABASE542 Compaq Fortran 90 and 77 v5.4A ECO #1 for Compaq Tru64 UNIX Alpha Systems DFADOC542 Compaq Fortran v5.4A ECO #1 Release Notes and Man Page DFACOM542 Compaq Fortran v5.4A ECO #1 Tools & their Man Pages DFARTL396 Compaq Fortran RTL #396 for Compaq Tru64 UNIX Alpha Systems (f90 and f77) OTABASE213 Compaq Compiled Code Support Library #213 HPFLIBS190 Compaq Fortran V5.4A ECO #1 High Performance Fortran Runtime Libraries V1 CXML is not included in the DFAO v5.4A ECO #1 kit. Therefore the following setld subsets are not present: XMDCOM500 the CXML common subset files XMDLIB4500 the CXML archive and shared libraries (serial and parallel) for EV4 systems XMDLIB5500 the CXML archive and shared libraries (serial and parallel) for EV5 systems XMDLIB6500 the CXML archive and shared libraries (serial and parallel) for EV6 systems XMDSCI500 the SCIPORT Cray compatibility library and manpages XMDMAN500 the CXML manpages XMDHTM500 the CXML manpages in HTML format For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the Compaq Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com Note that the libraries {libots} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using Tru64 UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with Tru64 UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) 0.2 DFAO Files The following files and their what(1) strings are included in the v5.4A ECO #1 release: decfort Compaq Fortran 77 X5.4A-197 -46B5P fort Compaq Fortran 77 Driver X5.4A-14 decfort90 Compaq Fortran 90 Compiler X5.4A-1684 -46B5P f90, f95, f77 Compaq Fortran Driver X5.4A-1684 f90_split Compaq Fortran 90 File Splitter X5.4A-9 fpr Compaq Fortran Printer Driver X5.4A-5 fsplit Compaq Fortran 77 File Splitter X5.4A-11 fpp Compaq Fortran Preprocessor X5.4A-24 DFARTL396 contains libFutil.a Compaq Convert RTL V1.1-100 1+ 6-dec-2000 libUfor.a Compaq Fortran Unsupported RTL V1.1-36 1+ 6-dec-2000 libfor.a Compaq Fortran RTL V1.1-864 1+ 22-may-2001 libFutil.so Compaq Convert RTL V1.1-100 1+ 6-dec-2000 libUfor.so Compaq Fortran Unsupported RTL V1.1-36 1+ 6-dec-2000 libfor.so Compaq Fortran RTL V1.1-864 1+ 22-may-2001 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-24 13-Oct-2000 for_main.o Compaq Fortran "main" program V1.0 OTABASE213 contains libots3.a: libots3.a V2.0-094b GEM 6 Jun 2001 libots3.so: libots3.a V2.0-094b GEM 6 Jun 2001 libots3_numa.a: libots3.a V2.0-094b (NUMA) GEM 6 Jun 2001 libots3_numa.so: libots3.a V2.0-094b (NUMA) GEM 6 Jun 2001 0.3 What Has Changed in DFAO X5.4A ECO #1 from v5.4A o The following changes were made to the X5.4A ECO #1 decfort compiler -197 since edit -196 {V5.4A}: - Fix a problem with COMMON variables being passed as actual arguments. o The following changes were made to the f77 driver: - No changes o The following changes were made to the run-time support in X5.4A ECO #1 between 6-Feb-2001 in -838 and 29-May-2001 in -864: - An error with list directed input dealing with an asterisk, "*", that ended a non-delimited character string that was immediately followed by a terminating comma was fixed. (cvf13556) - An error which caused unaligned access errors to be generated from within the run-time support when processing unformatted double complex arrays when convert big_endian was requested was fixed. (for2841) - The support for the ENDFILE statement was extended to allow it to be specified on a direct access file. The behavior is to truncate the direct access file at the end of the last record that had been accessed. - PRESENT and DEALLOCATE will now both work on an optional, allocated, 0-length object. - The syntax supported for NAMELIST input of derived-type structure components has been extended. A period (.) is allowed as a component selector, along with the percent sign (%). The same component selector must be used to separate all components within any given structure. - A problem with the run-time processing that supports buffering I/O when using sequential write formatting was fixed. (dfb3588) - Support has been added to access direct access files using record numbers greater than 2 GB. (cvf14451) o The following changes to DFAO documentation should be noted: - No changes o Please note the following: - If the user tries to set the -tune command line option to an architecture that has fewer features than what the -arch command line option specifies, the compiler will reset -tune to the same architecure as -arch. - As of X5.3 ECO1, the "-fast" command line option automatically sets "-arch host -tune host", which affects on which hardware architectures the generated code will run. - As of v5.3, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** Copyright © 2001 Compaq Computer Corporation 2-Mar-2001 1.0 Compaq Fortran V5.4A for Compaq Tru64 UNIX Alpha Systems These are the release notes for the release of Version v5.4A of Compaq Fortran for Compaq Tru64 UNIX Alpha Systems. It contains bug fixes, some new features, and performance enhancements to the current versions of Compaq Fortran for Alpha/UNIX. In this release, the "f77" command will execute the Compaq Fortran 90 compiler instead of the Compaq Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common Compaq Fortran RTL since the Compaq Fortran V5.3 release. Previous versions of these release notes for V5.4, V5.3 ECO 02, V5.3 ECO 01, V5.3, V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO v5.4A will run on Tru64 UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.4A will not work on Tru64 UNIX systems older than v4.0. DFAO v5.0, v5.1, v5.2, v5.3, and v5.4 have this same restriction. 1.1 Installation The DFAO v5.4A native software is a setld kit. It contains the following subsets: DFABASE541 Compaq Fortran 90 and 77 v5.4A for Compaq Tru64 UNIX Alpha Systems DFADOC541 Compaq Fortran v5.4A Release Notes and Man Page DFACOM541 Compaq Fortran v5.4A Tools & their Man Pages DFARTL394 Compaq Fortran RTL #394 for Compaq Tru64 UNIX Alpha Systems (f90 and f77) OTABASE212 Compaq Compiled Code Support Library #212 HPFLIBS185 Compaq Fortran V5.4 High Performance Fortran Runtime Libraries V1 XMDCOM500 the CXML common subset files XMDLIB4500 the CXML archive and shared libraries (serial and parallel) for EV4 systems XMDLIB5500 the CXML archive and shared libraries (serial and parallel) for EV5 systems XMDLIB6500 the CXML archive and shared libraries (serial and parallel) for EV6 systems XMDSCI500 the SCIPORT Cray compatibility library and manpages XMDMAN500 the CXML manpages XMDHTM500 the CXML manpages in HTML format For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the Compaq Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com Note that the libraries {libots} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using Tru64 UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with Tru64 UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) 1.2 DFAO Files The following files and their what(1) strings are included in the v5.4A release: decfort Compaq Fortran 77 V5.4A-196 -46B2F fort Compaq Fortran 77 Driver V5.4A-14 decfort90 Compaq Fortran 90 Compiler V5.4A-1472 -46B2F f90, f95, f77 Compaq Fortran Driver V5.4A-1472 f90_split Compaq Fortran 90 File Splitter V5.4A-9 fpr Compaq Fortran Printer Driver V5.4A-5 fsplit Compaq Fortran 77 File Splitter V5.4A-11 fpp Compaq Fortran Preprocessor V5.4A-21 DFARTL394 contains libFutil.a Compaq Convert RTL V1.1-100 1+ 6-dec-2000 libUfor.a Compaq Fortran Unsupported RTL V1.1-36 1+ 6-dec-2000 libfor.a Compaq Fortran RTL V1.1-838 1+ 5-feb-2001 libFutil.so Compaq Convert RTL V1.1-100 1+ 6-dec-2000 libUfor.so Compaq Fortran Unsupported RTL V1.1-36 1+ 6-dec-2000 libfor.so Compaq Fortran RTL V1.1-838 1+ 5-feb-2001 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-24 13-Oct-2000 for_main.o Compaq Fortran "main" program V1.0 OTABASE212 contains libots3.a: libots3.a V2.0-094 GEM 27 Feb 2001 libots3.so: libots3.a V2.0-094 GEM 27 Feb 2001 libots3_numa.a: libots3.a V2.0-094 (NUMA) GEM 27 Feb 2001 libots3_numa.so: libots3.a V2.0-094 (NUMA) GEM 27 Feb 2001 1.3 What Has Changed in DFAO v5.4A from v5.4 o The following changes were made to the V5.4A decfort compiler -196 since edit -194 {V5.4}: - Allow DFOR$PREFETCHxxx for single precision COMPLEX data types. o The following changes were made to the f77 driver: - No changes o The following changes were made to the run-time support in v5.4A between 14-Nov-2000 in -815 to 5-Feb-2001 in -838: - The Fortran RTL was not properly processing the input for a sequential or internal list directed read when the data contained a complex value with a repeat count before it. Additionally, the number of digits in the real part of the complex had to be less than the number of digits in the imaginary part, i.e. 10*(-1,1). This problem has been fixed. (cvf13179) - An extension in the NAMELIST support that was removed in V5.4 was reimplemented. When an array element is referenced on the left hand side of a NAMELIST input, multiple values can be specified on the right hand side. In this case, the array element is used as the base in which to start storing the values. Assuming A is an array declared INTEGER A(10), the NAMELIST assignment: A(2) = 2,3,4,5 would assign the value 2 to location A(2), 3 to A(3), 4 to A(4) and 5 to A(5). o The following changes to DFAO documentation should be noted: - No changes o Please note the following: - If the user tries to set the -tune command line option to an architecture that has fewer features than what the -arch command line option specifies, the compiler will reset -tune to the same architecure as -arch. - As of X5.3 ECO1, the "-fast" command line option automatically sets "-arch host -tune host", which affects on which hardware architectures the generated code will run. - As of v5.3, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** Copyright © 2000 Compaq Computer Corporation 29-Nov-2000 1.0 Compaq Fortran V5.4 for Compaq Tru64 UNIX Alpha Systems These are the release notes for the release of Version v5.4 of Compaq Fortran for Compaq Tru64 UNIX Alpha Systems. It contains bug fixes, some new features, and performance enhancements to the current versions of Compaq Fortran for Alpha/UNIX. In this release, the "f77" command will execute the Compaq Fortran 90 compiler instead of the Compaq Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common Compaq Fortran RTL since the Compaq Fortran V5.3 release. Previous versions of these release notes for V5.3 ECO 02, V5.3 ECO 01, V5.3, V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO v5.4 will run on Tru64 UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.4 will not work on Tru64 UNIX systems older than v4.0. DFAO v5.0, v5.1, v5.2, and v5.3 have this same restriction. 1.1 Installation The DFAO v5.4 native software is a setld kit. It contains the following subsets: DFABASE540 Compaq Fortran 90 and 77 v5.4 for Compaq Tru64 UNIX Alpha Systems DFADOC540 Compaq Fortran v5.4 Release Notes and Man Page DFACOM540 Compaq Fortran v5.4 Tools & their Man Pages DFARTL393 Compaq Fortran RTL #393 for Compaq Tru64 UNIX Alpha Systems (f90 and f77) OTABASE211 Compaq Compiled Code Support Library #211 HPFLIBS185 Compaq Fortran V5.4 High Performance Fortran Runtime Libraries V1 XMDCOM410 the CXML common subset files XMDLIB4410 the CXML archive and shared libraries (serial and parallel) for EV4 systems XMDLIB5410 the CXML archive and shared libraries (serial and parallel) for EV5 systems XMDLIB6410 the CXML archive and shared libraries (serial and parallel) for EV6 systems XMDSCI410 the SCIPORT Cray compatibility library and manpages XMDMAN410 the CXML manpages XMDHTM410 the CXML manpages in HTML format For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the Compaq Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com Note that the libraries {libots} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using Tru64 UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with Tru64 UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) 1.2 DFAO Files The following files and their what(1) strings are included in the v5.4 release: decfort Compaq Fortran 77 V5.4-194 -46ABA fort Compaq Fortran 77 Driver V5.4-14 decfort90 Compaq Fortran 90 Compiler V5.4-1283 -46ABA f90, f95, f77 Compaq Fortran Driver V5.4-1283 f90_split Compaq Fortran 90 File Splitter V5.4-9 fpr Compaq Fortran Printer Driver V5.4-5 fsplit Compaq Fortran 77 File Splitter V5.4-11 fpp Compaq Fortran Preprocessor V1.0-1 DFARTL393 contains libFutil.a Compaq Convert RTL V1.1-99 1+ 23-oct-2000 libUfor.a Compaq Fortran Unsupported RTL V1.1-35 1+ 30-aug-2000 libfor.a Compaq Fortran RTL V1.1-815 1+ 8-nov-2000 libFutil.so Compaq Convert RTL V1.1-99 1+ 23-oct-2000 libUfor.so Compaq Fortran Unsupported RTL V1.1-35 1+ 30-aug-2000 libfor.so Compaq Fortran RTL V1.1-815 1+ 8-nov-2000 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-24 13-Oct-2000 for_main.o Compaq Fortran "main" program V1.0 OTABASE211 contains libots3.a: libots3.a V2.0-085 GEM 20 Nov 2000 libots3.so: libots3.a V2.0-085 GEM 20 Nov 2000 libots3_numa.a: libots3.a V2.0-085 (NUMA) GEM 20 Nov 2000 libots3_numa.so: libots3.a V2.0-085 (NUMA) GEM 20 Nov 2000 1.3 What Has Changed in DFAO v5.4 from X5.3 ECO1 o The following changes were made to the FT1 decfort compiler -191 since edit -191 {v5.3 eco 01}: - none o The following changes were made to the FT2 decfort compiler -191 since edit -191 {T5.3 FT1}: - none o The following changes were made to the FT3 decfort compiler -192 since edit -191 {T5.3 FT2}: - -pipeline is now on by default at -O4 o The following changes were made to the V5.4 decfort compiler -194 since edit -192 {T5.3 FT3}: - A traceback of the stack of called procedures now is displayed when a fatal run-time error occurs. Source names and line numbers are displayed unless symbol information is stripped from the executable. o The following changes were made to the f77 driver: - No changes o The following changes were made to the run-time support in FT1 between 31-Mar-2000 and 10-May-2000 in -721 to -754: - A SCAN or VERIFY backwards results is an access violation when passed a string that contains a character greater than X'7f'. (dfb3342 & dvf9403){f90 only} - The Fortran RTL has been changed so that it now processes the [.m] (the minimum number of digits) portion of the edit descriptor when w (the width field) is Zero for I, B, O, and Z editing. (dfb3351 & cvf9587) {f90 only} - An incorrect end-of-file error occurs when list directed input is used to read from character*1 arrays. Elements of character*1 and arrays of character*[2-max] work okay. (dvf3408 & cvf10469) - An end-of-file or end-of-record status is no longer treated as an error status. This change was done to adhere to the Fortran 90 language standard. Prior to this change, if there was an ERR= specified and no END=|EOR= for a READ operation and the READ encountered an end-of-file or end-of-record situation, the ERR= path would be followed. With this change, this situation would now result in a fatal message being generated. - The runtime library now contains support for a new environment variable, FORT_CONVERT_ that allows a user to associate a foreign data conversion option with files of a particular file extension. See the documentation for more details. - The runtime library has been changed to perform more thorough edit checking on list directed input. Previously, the RTL was liberal in what it accepted for input to integer and real values. In accordance with the F95 Standard, the RTL no longer accepts "+", "-", ".", "D", "E", or "Q" without expressing at least 1 digit. For example, the RTL used to allow a single "+" to convert to a 0, but now the RTL will return a FOR$IOS_LISIO_SYN error. In addition, ambiguous expressions such as "+-" and "--" will be rejected. (dfb3350 & dvf9422) - Support for the new carriage control command line option was added to the FORTRAN Run-time library.{f90 only} - Support for the fpscomp options is now implemented in the Fortran RTL on Unix: -fpscomp all -fpscomp general -fpscomp ioformat -fpscomp logicals -fpscomp filesfromcmd This support includes the six Microsoft Powerstation compatible file types as described in the Visual Fortran Programmer's Guide: - MS Unformatted Sequential Access - MS Unformatted Direct Access - MS Formatted Sequential Access - MS Formatted Direct Access - MS Binary Sequential Access - MS Binary Direct Access This includes all fpscomp behavior that does not involve Windows-specific features. There is no QuickWin-like support. The 'Filenames from Command Line' option looks in the command line arguments for unspecified filenames on an OPEN(...,FILE='',...) and will also prompt for filenames at the terminal, but does not implement the equivalent of a Windows Dialog box, like a QuickWin application would in the PC environment. Windows-specific physical device names used as filenames are given no special consideration or handling.{f90 only} - Support for reading nondelimited character strings as input for character NAMELIST items has been added.{f90 only} A character string does not need delimiting apostrophes or quotation marks if the corresponding NAMELIST item is of type default character, and the following is true: - The character string does not contain a blank, comma, slash, exclamation (!), ampersand (&), dollar sign ($), left parenthesis, equal sign (=), percent sign (%), or period (.). - The character string is not continued across a record boundary. - The first nonblank character in the string is not an apostrophe or a quotation mark. - The leading character is not a string of digits followed by an asterisk. A nondelimited character string is terminated by the first blank, comma, slash, end-of-record, exclamation, ampersand, or dollar sign encountered. Apostrophes and quotation marks within nondelimited character strings are transferred as is. Should an equal sign, percent sign, or period be encountered while scanning for a nondelimited character string, the string will be treated as a variable name (or part thereof) and not as a nondelimited character string. Be forewarned that nondelimited character strings that are written out by using a NAMELIST write may not be read in as expected by a corresponding NAMELIST read. Given the following example code: NAMELIST/TEST/ CHARR CHARACTER*3 CHARR(4) DATA CHARR/'AAA', 'BBB', 'CCC', 'DDD'/ OPEN (UNIT=1, FILE='NMLTEST.DAT') WRITE (1, NML=TEST) END The output file NMLTEST.DAT will contain: &TEST CHARR = AAABBBCCCDDD / Should an attempt be made to read the data in NMLTEST.DAT back in with a NAMELIST read using nondelimited character strings: NAMELIST/TEST/ CHARR CHARACTER*3 CHARR(4) DATA CHARR/4*' '/ OPEN (UNIT=1, FILE='NMLTEST.DAT') READ (1, NML=TEST) PRINT *, 'CHARR read in >', CHARR(1),'< >',CHARR(2),'< >', 1 CHARR(3), '< >', CHARR(4), '<' END will result in: CHARR read in >AAA< > < > < > < o The following changes were made to the run-time support in FT2 between 10-May-2000 in -754 to 12-Sep-2000 in -791: - For an INQUIRE for blocksize, the Fortran run-time always returned 0. It now returns the correct value. - A problem related to formatted direct access reading when more bytes are required in the I/O list than specified by the record length and the I/O list item is of type character which is padded out with blanks was fixed. (cvf11036) - When the DATE, TIME, or ZONE arguments to the DATE_AND_TIME intrinsic routine are not large enough to hold the required information, a fatal run-time error will now be generated. (dfb3475) - The run-time support was enhanced to allow a REWIND operation to be performed on a direct access file. This is allowed without having to specify any command line options. - The run-time support was improperly positioning before the last character in a file opened with form='binary' and position='append' if the character happened to be a control-z character, an achar(26). The run-time support was fixed to not skip the control-z under these conditions. (cvf11664) {f90 only} - The run-time libaray was not adding a trailing terminator to the last record of an input file when it was being redirected or piped to the standard input unit, * and 5. The trailing terminator was being added if the input file was being accessed through any other input unit. This problem has been fixed. (cvf10339) - New bits were defined in the for_set_fpe routine interface to allow the compiler to specify counting and messages for floating point inexact traps (fpe:6). The runtime handler is updated to provide this service. NEW SUPPORT: - New run-time jacket routines provided for Fortran 3f lgamma, erf, erfc, short and long functions in libUfor. New entry point interfaces are: float lgamma_ ( float *x ) ; double dlgamma_ ( double *x ) ; float erf_ ( float *x ) ; double derf_ ( double *x ) ; float erfc_ ( float *x ) ; double derfc_ ( double *x ) ; short short_ ( int *x ) ; int long_ ( short *x ) ; - The run-time now supports unlimited record sizes for writes, reads, backspaces of variable length unformatted files. Records greater than 2.1 giga-bytes use a new scheme that may not be portable to other vendor's Fortran. (dfb3384) o The following changes were made to the run-time support in FT3 between 12-Sep-2000 in -791 to 18-Oct-2000 in -806: - A problem where printing an IEEE floating point denormal value in F format was incorrectly be displayed in E format was fixed. - The run-time support was fixed to generate the correct output (12345*) for writes similar to the following: WRITE (*,'(A,SP,I1)') '12345', +7 NEW SUPPORT: - Support for generating traceback information has been added to the run-time support. Traceback will be produced for all severe errors. Traceback output can be disabled by setting the environment variable FOR_DISABLE_STACK_TRACE to true. All diagnostic output, which includes traceback, can be redirected to a file defined by the FORT0 environment variable, which was already supported. o The following changes were made to the run-time support in v5.4 between 18-Oct-2000 in -806 to 14-Nov-2000 in -815: NEW SUPPORT: - The run-time now supports unlimited record sizes for writes, reads, and backspaces of variable length unformatted files. Records greater than 2.1 giga-bytes use a new scheme that may not be portable to other vendor's Fortran. o The following changes to DFAO documentation should be noted: - No changes o Please note the following: - If the user tries to set the -tune command line option to an architecture that has fewer features than what the -arch command line option specifies, the compiler will reset -tune to the same architecure as -arch. - As of X5.3 ECO1, the "-fast" command line option automatically sets "-arch host -tune host", which affects on which hardware architectures the generated code will run. - As of v5.3, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** Copyright © 2000 Compaq Computer Corporation 15-Sep-2000 0.0 Compaq Fortran X5.3 ECO2 for Compaq Tru64 UNIX Alpha Systems These are the release notes for ECO 02 of Version V5.3 of Compaq Fortran for Compaq Tru64 UNIX Alpha Systems. It contains bug fixes to the current version of Compaq Fortran 90 for Alpha/UNIX. This ECO release does not include updates to the Compaq Extended Math Libraries {CXML}. In this release, the "f77" command will execute the Compaq Fortran 90 compiler instead of the Compaq Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common Compaq Fortran RTL since the Compaq Fortran V5.3 ECO 01 release. Previous versions of these release notes for V5.3 ECO 01, V5.3, V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO X5.3 ECO2 will run on Tru64 UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.3 ECO2 will not work on Tru64 UNIX systems older than v4.0. DFAO v5.0, v5.1, v5.2, and v5.3 have this same restriction. 0.1 Installation The DFAO X5.3 ECO2 native software is a setld kit. It contains the following subsets: DFABASE532 Compaq Fortran 90 and 77 X5.3 (ECO2) for Compaq Tru64 UNIX Alpha Systems DFADOC532 Compaq Fortran X5.3 (ECO2) Release Notes and Man Pages DFACOM532 Compaq Fortran X5.3 (ECO2) Tools and their Man pages DFARTL389 Compaq Fortran Runtime Support for Compaq Tru64 UNIX Alpha Systems (f90 and f77) OTABASE207 Compaq Compiled Code Support Library #207 HPFLIBS180 High Performance Fortran Run-Time Libraries The CXML subsets are not included in DFAO X5.3 (ECO2): XMDCOM360 the CXML common subset files XMDLIB4360 the CXML archive and shared libraries (serial and parallel) for EV4 systems XMDLIB5360 the CXML archive and shared libraries (serial and parallel) for EV5 systems XMDLIB6360 the CXML archive and shared libraries (serial and parallel) for EV6 systems XMDSCI360 the SCIPORT Cray compatibility library and manpages XMDMAN360 the CXML manpages XMDHTM360 the CXML manpages in HTML format For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the Compaq Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com Note that the libraries {libots} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using Tru64 UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with Tru64 UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) 0.2 DFAO Files The following files and their what(1) strings are included in the X5.3 ECO2 release: decfort Compaq Fortran 77 X5.3-191 -44A8I fort Compaq Fortran 77 Driver X5.3-12 fpr Compaq Fortran Printer Driver X5.3-5 fsplit Compaq Fortran 77 File Splitter X5.3-11 fpp Compaq Fortran Preprocessor V1.0-1 decfort90 Compaq Fortran 90 Compiler X5.3-1155 -44A8I f90 & f95 Compaq Fortran Driver X5.3-1155 f90_split Compaq Fortran 90 File Splitter X5.3-9 DFARTL389 contains libFutil.a Compaq Convert RTL V1.1-89 1+ 8-nov-1999 libUfor.a Compaq Fortran Unsupported RTL V1.1-32 1+ 8-nov-1999 libfor.a Compaq Fortran RTL V1.1-721 1+ 28-mar-2000 libFutil.so Compaq Convert RTL V1.1-89 1+ 8-nov-1999 libUfor.so Compaq Fortran Unsupported RTL V1.1-32 1+ 8-nov-1999 libfor.so Compaq Fortran RTL V1.1-721 1+ 28-mar-2000 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-19 09-Nov-1999 for_main.o Compaq Fortran "main" program V1.0 The listing file version string in the page header is "Compaq Fortran 77 X5.3-191" OTABASE207 contains libots3.a V1.0-031 GEM 3 May 1999 libots3.so V1.0-031 GEM 3 May 1999 0.3 What Has Changed in DFAO X5.3 ECO2 from DFAO X5.3 ECO1 o The following changes were made to the X5.3 ECO2 decfort compiler -191 since edit -191 {X5.3 ECO1}: - No changes o The following changes were made to the f77 driver: - No changes o The following changes were made to the run-time support: - No changes o The following changes to DFAO documentation should be noted: - No changes o Please note the following: - As of X5.3 ECO1, the "-fast" command line option automatically sets "-arch host -tune host", which affects on which hardware architectures the generated code will run. - As of v5.3, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** Copyright © 2000 Compaq Computer Corporation 22-Jul-2000 0.0 Compaq Fortran X5.3 ECO1 for Compaq Tru64 UNIX Alpha Systems These are the release notes for ECO 01 of Version V5.3 of Compaq Fortran for Compaq Tru64 UNIX Alpha Systems. It contains bug fixes, some new features, and performance enhancements to the current versions of Compaq Fortran for Alpha/UNIX. This ECO release does not include updates to the Compaq Extended Math Libraries {CXML}. In this release, the "f77" command will execute the Compaq Fortran 90 compiler instead of the Compaq Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common Compaq Fortran RTL since the Compaq Fortran V5.3 release. Previous versions of these release notes for V5.3, V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO X5.3 ECO1 will run on Tru64 UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.3 ECO1 will not work on Tru64 UNIX systems older than v4.0. DFAO v5.0, v5.1, v5.2, and v5.3 have this same restriction. 0.1 Installation The DFAO X5.3 ECO1 native software is a setld kit. It contains the following subsets: DFABASE531 Compaq Fortran 90 and 77 X5.3 (ECO1) for Compaq Tru64\ UNIX Alpha Systems DFADOC531 Compaq Fortran X5.3 (ECO1) Release Notes and Man Pages DFACOM531 Compaq Fortran X5.3 (ECO1) Tools and their Man pages DFARTL389 Compaq Fortran Runtime Support for Compaq Tru64 UNIX Alpha Systems (f90 and f77) OTABASE207 Compaq Compiled Code Support Library #207 HPFLIBS180 High Performance Fortran Run-Time Libraries The CXML subsets are not included in DFAO X5.3 (ECO1): XMDCOM360 the CXML common subset files XMDLIB4360 the CXML archive and shared libraries (serial and parallel) for EV4 systems XMDLIB5360 the CXML archive and shared libraries (serial and parallel) for EV5 systems XMDLIB6360 the CXML archive and shared libraries (serial and parallel) for EV6 systems XMDSCI360 the SCIPORT Cray compatibility library and manpages XMDMAN360 the CXML manpages XMDHTM360 the CXML manpages in HTML format For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the Compaq Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com Note that the libraries {libots} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using Tru64 UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with Tru64 UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) 0.2 DFAO Files The following files and their what(1) strings are included in the X5.3 ECO1 release: decfort Compaq Fortran 77 X5.3-191 -44A7B fort Compaq Fortran 77 Driver X5.3-12 fpr Compaq Fortran Printer Driver X5.3-5 fsplit Compaq Fortran 77 File Splitter X5.3-11 fpp Compaq Fortran Preprocessor V1.0-1 decfort90 Compaq Fortran 90 Compiler X5.3-1120 -44A7B f90 & f95 Compaq Fortran Driver X5.3-1120 f90_split Compaq Fortran 90 File Splitter X5.3-9 DFARTL389 contains libFutil.a Compaq Convert RTL V1.1-89 1+ 8-nov-1999 libUfor.a Compaq Fortran Unsupported RTL V1.1-32 1+ 8-nov-1999 libfor.a Compaq Fortran RTL V1.1-721 1+ 28-mar-2000 libFutil.so Compaq Convert RTL V1.1-89 1+ 8-nov-1999 libUfor.so Compaq Fortran Unsupported RTL V1.1-32 1+ 8-nov-1999 libfor.so Compaq Fortran RTL V1.1-721 1+ 28-mar-2000 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-19 09-Nov-1999 for_main.o Compaq Fortran "main" program V1.0 The listing file version string in the page header is "Compaq Fortran 77 X5.3-191" OTABASE207 contains libots3.a V1.0-031 GEM 3 May 1999 libots3.so V1.0-031 GEM 3 May 1999 0.3 What Has Changed in DFAO X5.3 ECO1 from DFAO v5.3 o The following changes were made to the sanity decfort compiler -191 since edit -190 {v5.3}: - -fast sets "-arch host -tune host" o The following changes were made to the FT1 decfort compiler since edit -189 {v5.3}: - Add ev67 to the -arch and -tune command line switches. o The following changes were made to the f77 driver: - No changes o The following changes were made to the run-time support: - An end-of-file or end-of-record status is no longer treated as an error status. This change was done to adhere to the Fortran 90 language standard. Prior to this change, if there was an ERR= specified and no END= for a READ operation and the READ encountered an end-of-file situation, the ERR= path would be followed. With this change, this situation would now result in a fatal message being generated. - The runtime library now contains support for a new environment variable, FORT_CONVERT. that allows a user to associate a foreign data conversion option with files with file extension ".". For command shells that don't support a "." in an environment variable name, the runtime library also supports the environment variable FORT_CONVERT_. o The following changes to DFAO documentation should be noted: - No changes o Please note the following: - As of X5.3 ECO1, the "-fast" command line option automatically sets "-arch host -tune host", which affects on which hardware architectures the generated code will run. - As of v5.3, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** © Digital Equipment Corporation 1999. All rights reserved. 18-Nov-1999 1.0 Compaq Fortran v5.3 for Compaq Tru64 UNIX Alpha Systems These are the release notes for Version v5.3 of Compaq Fortran for Compaq Tru64 UNIX Alpha Systems {formerly known as DIGITAL Fortran for DIGITAL UNIX Alpha Systems}. It contains bug fixes, some new features, and performance enhancements to the current versions of Compaq Fortran for Alpha/UNIX. This release also includes updates to the Compaq Extended Math Libraries {CXML}, formerly the DIGITAL Extended Math Libraries {DXML}. Starting with this release, the "f77" command will execute the Compaq Fortran 90 compiler instead of the Compaq Fortran 77 compiler. See the note on the "-old_f77" switch below for more details. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common Compaq Fortran RTL since the DIGITAL Fortran V5.2 release. Previous version of these release notes for V5.2 ECO 01, V5.2, V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO v5.3 will run on DIGITAL UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.3 will not work on DIGITAL UNIX systems older than v4.0. DFAO v5.0, v5.1, and v5.2 have this same restriction. 1.1 Installation The DFAO v5.3 native software is a setld kit. It contains the following subsets: DFABASE530 Compaq Fortran 90 and 77 v5.3 for Compaq Tru64 UNIX Alpha Systems DFADOC530 Compaq Fortran v5.3 Release Notes and Man Pages DFACOM530 Compaq Fortran v5.3 Tools and their Man pages DFARTL388 Compaq Fortran Runtime Support for Compaq Tru64 UNIX Alpha Systems (f90 and f77) OTABASE205 Compaq Compiled Code Support Library #205 HPFLIBS170 High Performance Fortran Run-Time Libraries XMDCOM360 the CXML common subset files XMDLIB4360 the CXML archive and shared libraries (serial and parallel) for EV4 systems XMDLIB5360 the CXML archive and shared libraries (serial and parallel) for EV5 systems XMDLIB6360 the CXML archive and shared libraries (serial and parallel) for EV6 systems XMDSCI360 the SCIPORT Cray compatibility library and manpages XMDMAN360 the CXML manpages XMDHTM360 the CXML manpages in HTML format For a detailed description of the installation procedure, see the Compaq Fortran Installation Guide for Compaq Tru64 UNIX Alpha Systems. You may also send comments, questions and suggestions about the Compaq Fortran products to the following mail address: fortran@compaq.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The Compaq Fortran home page, located at the following URL: http://www.compaq.com/fortran * The Compaq Computer Corporation home page, located at the following URL: http://www.compaq.com Note that the libraries {libots} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using DIGITAL UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with DIGITAL UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) 1.2 DFAO Files The following files and their what(1) strings are included in the T5.3 FT2 release: decfort Compaq Fortran 77 V5.3-189 -449BB fort Compaq Fortran 77 Driver V5.3-11 fpr Compaq Fortran Printer Driver V5.3-4 fsplit Compaq Fortran 77 File Splitter V5.3-9 fpp Compaq Fortran Preprocessor V1.0-1 decfort90 Compaq Fortran 90 Compiler V5.3-915 -449BB f90 & f95 Compaq Fortran Driver V5.3-915 f90_split Compaq Fortran 90 File Splitter V5.3-9 DFARTL388 contains libFutil.a Compaq Convert RTL V1.1-89 1+ 8-nov-1999 libUfor.a Compaq Fortran Unsupported RTL V1.1-32 1+ 8-nov-1999 libfor.a Compaq Fortran RTL V1.1-790 1+ 11-nov-1999 libFutil.so Compaq Convert RTL V1.1-89 1+ 8-nov-1999 libUfor.so Compaq Fortran Unsupported RTL V1.1-32 1+ 8-nov-1999 libfor.so Compaq Fortran RTL V1.1-719 1+ 11-nov-1999 for_msg.cat Compaq Fortran RTL Message Catalog V1.1-19 09-Nov-1999 for_main.o Compaq Fortran "main" program V1.0 The listing file version string in the page header is "Compaq Fortran 77 V5.3-189" OTABASE205 contains libots3.a V1.0-031 GEM 9 Oct 1998 libots3.so V1.0-031 GEM 9 Oct 1998 1.3 What Has Changed in DFAO v5.3 from DFAO v5.2 ECO 01 o The following changes were made to the decfort compiler from edit -181 through -184 {ft1}: - Get underflowing real*4 parameter constants correct: PARAMETER - Avoid ACCVIO when RECORD statement conflicts with previous use of name. - Improve line number hadling in debugger on I/O statements. - Fix assertion when dummy arg name is the SAME as a SUBROUTINE/FUNCTION/ENTRY name already seen. o The following changes were made to the decfort compiler in edit -185 {ft2}: - remove TRAP_UNF bit from -fpe0 & 1 so underflows don't trap {not needed on Alpha for ABRUPT_UNDERFLOW to 0}; on -fpe0,1,2 set ABRUPT_DMZ so denorm input to instructions get stomped to 0. o The following changes were made to the decfort compiler in edit -189 {v5.3}: - Fix compiler abort with SELECTCASE(REALVAR); CASE(0) . o The following changes were made to the f77 driver: - As of T5.3 FT2, the f77 command executes the f90 compiler. Use "f77 -old_f77" to execute the Compaq Fortran 77 compiler. o The following changes were made to the run-time support: o DFARTL385 packaged containing -672 on 25-Jun-1999 for DFA521 o changes between 23-Jun-1999 and 16-Aug-1999 in -672 to -688: - When performing an internal list directed read of a character variable and the next character being read in is an asterisk "*", the run-time support was interpreting the asterisk as a repeat character. The proper interpretation is that it is the start of a non-delimited string. The run-time support was modified to provide the proper interpretation. (DFAl25) - Fortran applications will abort with a segmentation fault when the application requires more stack space than the currently configured system maximum for the process allows, or when the user process stack size resource limit is too small. In the past, this simple to fix condition has been a problem because the cause is not obvious from the general "seg fault" error message. The Fortran run-time library has been changed in two ways to help with the situation. When an application is started, the run-time will now automatically raise the stack size resource limit to the max available for the process. This will hopefully avoid the stack overflow problem for most end users. In cases where a "seg fault" still occurs, the run-time will trap the condition and check to see if it appears to be due to stack overflow. If it does appear to be a stack overflow problem, the run-time will issue a new error message informing the user of the stack size resource limitation. Otherwise, a general "seg fault" will be reported. Users should be aware, in some cases, a stack size resource problem may still go undetected by the run-time and continue to generate a general "seg fault" message. The run-time check does not cover all possible situations under which the problem may arise. (FN2227, DFB3244) - The run-time library checks the environment variable decfort_dump_flag before exiting in the face of a severe error to see if the user has requested a core file be generated. The user was required to set the variable to a value that began with 'y' or 'Y' to enable generating a core file. This has been changed to accept a wider set of common 'true' values. o DFARTL386 packaged containing -688 on 25-Jun-1999 for DFA530 FT1 o changes between 17-Aug-1999 and 5-Oct-1999 in -688 to -710: - The RTL was fixed to properly support a run-time format that contained a repeated slash edit descriptor. (bug2288) - In list directed READ's, transfers of complex input with repeat counts to non-complex I/O list items would repeat the input value one too many times. (dfb3285) - In list directed READ's, transfers of complex input with repeat counts to complex I/O list items would cause a segv. (dfv3286) - For IEEE floating point, the Fortran rtl incorrectly enabled underflow traps at fpe0 by default. This was harmless to performance or results but, it does not do that any more just to be clean. For IEEE floating point, the Fortran compiler and rtl acted in concert to incorrectly enable underflow traps at fpe1. This was harmless to results, but severely impacts performance. Now, at fpe1, underflow traps will not be enabled. The user must recompile to get the new behavior. (df2286 and df2368) - For IEEE floating point, the Fortran rtl now causes denormal input operands to be flushed to 0.0 at fpe0 by default on systems where either the hardware version (EV6) or operating system emulation support exists to do so. On systems lacking either hardware or operating system support, denormal inputs will continue to generate a floating invalid operation exception. Also, if the user recompiles, the Fortran compiler and rtl will now act in concert to provide this behavior at fpe1 and fpe2 as well. (df2286) - The Fortran rtl now supports the COMPLEX*32 data type in all forms of I/O. {COMPLEX*32 is a f90 feature only} o DFARTL387 packaged containing -710 on 5-Oct-1999 for DFA530 FT2 o changes between 5-Oct-1999 and 15-Nov-1999 in -710 to -719: - An INDEX backwards returns the wrong value when the search substring is matching characters (e.g., "AA") and the string being searched contains at least the same number of matching characters - even though the strings may not equate. (dfb3332) o DFARTL388 packaged containing -719 on 18-Nov-1999 for DFA530 v5.3 o The following changes to DFAO documentation should be noted: - The explanation of run-time error 41 {Insufficient Virtual Memory} in the User Manual recommends modifying maxdsiz in the configuration file. This is no longer the right fix. The new way is to modify the parameters for subsystems vm (maxvas in particular) and/or proc (max-per-proc-* parameters in particular) in sysconfigtab. o Please note the following: - Please read the "Please note the following" sections in the attached release notes. - As of T5.3 FT2, the f77 command will execute the Compaq Fortran 90 compiler. The f77 driver will now obey the DECF90_* environment variables. If the first command line option after the f77 command is "-old_f77", the driver will execute the Compaq Fortran 77 compiler. To get the DFAO v5.2 behavior where the f77 command executes the Compaq Fortran 77 compiler, change the "/usr/bin/f77" link to point to "/usr/lib/cmplrs/fort/fort". - -fpe0, -fpe1, and -fpe2 now set the IEEE DMZ flag which forces denormal operands as instruction inputs to be set to 0. These denorms used to cause traps at -fpe0. - If the environment variable decfort_dump_flag is set to "y" or "Y" or various spellings of "T", the Fortran run-time system will create a core dump when an I/O error occurs and there is no IOSTAT= etc. - Please read the CXML release notes in: /usr/opt/XMDDOC360/docs/XMD360_release_note.txt - The command line option "-source_listing" produces a listing file with a file extension of ".lis" {as opposed to "-V" which produces a .l file}. - There are three INCLUDE files in /usr/include that give definitions of DFAO RTL symbols: for_fpe_flags.f - flags for for_set/get_fpe(3f) fordef.f - return values for fp_class foriosdef.f - values for STAT= IO status results ******************************************************************************** © Digital Equipment Corporation 1999. All rights reserved. 9-Jul-1999 0.0 DIGITAL Fortran V5.2 ECO 01 for DIGITAL UNIX Alpha Systems These are the release notes for ECO 01 for Version V5.2 of DIGITAL Fortran for DIGITAL UNIX Alpha Systems. It contains bug fixes and performance enhancements to the current versions of DIGITAL Fortran for Alpha/UNIX. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common DIGITAL Fortran RTL since the DIGITAL Fortran V5.2 release. Previous versions of these release notes for V5.2 V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO v5.2 ECO 01 will run on DIGITAL UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.2 ECO 01 will not work on DIGITAL UNIX systems older than v4.0. DFAO v5.2, v5.1, and v5.0 have this same restriction. 0.1 Installation The DFAO v5.2 ECO 01 native software is a setld kit. It is a partial kit, ie, it does not contain all of the subsets that DFAO v5.2 does. It contains the following subsets: DFABASE521 DIGITAL Fortran 90 and 77 v5.2 ECO 01 for DIGITAL UNIX Alpha Systems DFADOC521 DIGITAL Fortran v5.2 ECO 01 Release Notes and Man Pages DFARTL385 DIGITAL Fortran Runtime Support for DIGITAL UNIX Systems (f90 and f77) OTABASE205 DIGITAL Compiled Code Support Library #205 XMDLOA351 the serial DXML archive library and shared library XMDPLL351 the parallel DXML shared library The following subsets must be obtained from the DFAO v5.2 kit: DFACOM520 DIGITAL Fortran v5.2 Tools and their Man pages HPFLIBS170 High Performance Fortran Run-Time Libraries XMDMAN350 the DXML manpages XMDSCI350 the SCIPORT Cray compatibility library and manpages For a detailed description of the installation procedure, see the DIGITAL Fortran Installation Guide for DIGITAL UNIX Systems. You may also send comments, questions and suggestions about the DIGITAL Fortran products to the following mail address: fortran@digital.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The DIGITAL Fortran home page, located at the following URL: http://www.digital.com/fortran * The DIGITAL Equipment Corporation home page, located at the following URL: http://www.digital.com Note that the compiled code support libraries {libots.a and .so} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using DIGITAL UNIX V4.0 or newer, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with DIGITAL UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) You can use the "setld -D" option to install the software to another root directory. Everything in the installation then hangs off that root. Commands like f77 can be pointed to by PATH, the DECFORT environment variable can point to where the compiler is, "-L" can tell f77 where the RTL is, and the LD_LIBRARY_PATH environment variable can be used to ensure that the desired version of shareable libraries are picked up at run time. 0.2 DFAO Files The following files and their what(1) strings are included in the v5.2 ECO 01 release: decfort DIGITAL Fortran 77 X5.2-183 -4296F fort DIGITAL Fortran 77 Driver X5.2-11 fortpr DIGITAL Fortran Printer Driver X5.2-3 fsplit DIGITAL Fortran 77 File Splitter X5.2-9 fpp DIGITAL Fortran Preprocessor V1.0-1 decfort90 Compaq Fortran 90 Compiler X5.2-829 -4296F f90 Compaq Fortran Driver V5.2-829 f90_split DIGITAL Fortran 90 File Splitter X5.2-9 DFARTL385 contains libFutil.a DEC Convert RTL V1.1-87 1+ 3-jun-1999 libUfor.a DEC Fortran Unsupported RTL V1.1-30 1+ 20-jun-1999 libfor.a DEC Fortran RTL V1.1-672 1+ 21-jun-1999 libFutil.so DEC Convert RTL V1.1-87 1+ 3-jun-1999 libUfor.so DEC Fortran Unsupported RTL V1.1-30 1+ 20-jun-1999 libfor.so DEC Fortran RTL V1.1-672 1+ 21-jun-1999 for_msg.cat DEC Fortran RTL Message Catalog V1.1-15 18-Jun-1997 for_main.o DEC Fortran "main" program V1.0 The listing file version string in the page header is "DIGITAL Fortran 77 X5.2-183" OTABASE205 contains libots3.a V1.0-031 GEM 9 Oct 1998 libots3.so V1.0-031 GEM 9 Oct 1998 0.3 What Has Changed in DFAO v5.2 ECO 01 from DFAO v5.2 o The following changes were made to the decfort compiler from edit -172 through -183: - Do not issue an alignment warning for variables equivalenced into a common block seen inside a cdec$ OPTION /warn=noalign. - Add "-switch fe_lrboolean". This has the effect of evaluating .OR. and .AND. "from left to right". - A USEROPEN routine may have side effects (modify COMMON variables). - Get better optimizations for READ/WRITEs which do NOT modify variables like ASSOCIATE_VARIABLES or through USEROPEN routines. - Fix -convert to take ONLY its most recent argument (so that command line overrides any DECFORT_INIT settings. - Avoid ACCVIO when RECORD statement conflicts with previous use of name. o The following changes were made to the f77 driver: - Link against libm_ev6.a for "-arch ev6" plus "-non_shared". o The following changes were made to the run-time support: o DFARTL384 packaged containing -615 on 19-Nov-1998 o changes between 17-Nov-1998 and 24-Feb-1999 in -616 to -643: - A memory leak was fixed in the run-time support when a list directed read that used a run-time format encountered a conversion error. (dvf5689) - For direct and keyed access formatted read operations where the input list and format specification require more data than the input record contains and with F90 input padding required, the run-time library did not properly handle character string input (dfa1830, dfb3144). - The Fortran runtime was writing past the end of an internal string in the support routine for PAUSE with the potential of generating an access violation or segmentation fault. o changes between 25-Feb-1999 and 22-Jun-1999 in -644 to -672: - List-directed READ's of a large file could sometimes cause an access violation in the Fortran runtime library. (dfb3179) - CPU_TIME was returning a negative value if the cpu time was greater than 36 minutes. This problem has been fixed by using the GETRUSAGE system routine instead of the C clock routine to obtain the process time. (df2236) - Under some situations, the performance when writing out very large amounts of data using formatted output has been improved. (dvf7091) - When performing a list directed read of a character variable and the next character being read in is an asterisk "*", the run-time support was interpreting the asterisk as a repeat character. The proper interpretation is that it is the start of a non-delimited string. The run-time support was modified to provide the proper interpretation. (dvf7460) - If -check nooutput_conversion was specified or defaulted, the run-time library did not totally ignore an output conversion error. It only inhibited the outputting of the run-time diagnostic message when a conversion error occurred. Any IOSTAT= variable was still set to reflect the error (63) and any ERR= branch was still taken. When an output conversion error occurs now with /check:nooutput_conversion specified, the run-time library will fill the output field with asterisk's (as before) and continue as if no error occurred, i.e., any ERR= branch will not be taken and any IOSTAT= variable will reflect success. - The run-time support was not properly advancing to a new record when format reversion was in affect when ADVANCE='NO' was specified. The RTL support was modified to properly advance to the next record under these circumstances and now adheres to the Fortran 95 Language standard. (bug1939 & bug2261) - The runtime library now contains support for a new environment variable, FORT_CONVERT. that allows a user to associate a foreign data conversion option with files of a particular file extension. See the documentation for more details. o DFARTL385 packaged containing -672 on 25-Jun-1999 o The following changes to DFAO documentation should be noted: - When opening a file named ., the RTL will look for an environment variable named FORT_CONVERT.. If it exists, the RTL uses its value to determine the kind of conversion to perform during I/O to this file. The values for FORT_CONVERT. are the same strings as for the FOR_CONVERT# environment variable. In the file spec ., can contain dots {.} so the is preceded by the rightmost dot. is case-sensitive so FORT_CONVERT.foo does not affect the file named DATA.FOO. The precedence that the RTL follows when looking for the conversion type for a file is - if the environment variable FORT_CONVERT# is defined for unit #, then use its value; if not, - if the file name is . and the environment variable FORT_CONVERT. is defined, use its value; if not, - if the OPEN has a CONVERT=, do that; if not, - if the program was compiled with an OPTIONS/CONVERT in the source code, do that; if not, - if the program was compiled with the -convert command line option, do that; if not, - use the default convert kind o Please note the following: - Please read the "Please note the following" sections in the attached release notes. - This ECO release includes the two subsets XMDLOA351 (DXML serial libraries) and XMDPLL351 (DXML parallel libraries). - The command line option "-source_listing" is not documented but it produces a listing file with a file extension of ".lis" {as opposed to "-V" which produces a .l file}. ******************************************************************************** © Digital Equipment Corporation 1998. All rights reserved. 9-Dec-1998 1.0 DIGITAL Fortran V5.2 for DIGITAL UNIX Alpha Systems These are the release notes for Version V5.2 of DIGITAL Fortran for DIGITAL UNIX Alpha Systems. It contains bug fixes, some new features, and performance enhancements to the current versions of DIGITAL Fortran for Alpha/UNIX. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common DIGITAL Fortran RTL since the DIGITAL Fortran V5.1 release. Previous version of these release notes for V5.1, V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO v5.2 will run on DIGITAL UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.2 will not work on DIGITAL UNIX systems older than v4.0. DFAO v5.0 and v5.1 have this same restriction. 1.1 Installation The DFAO v5.2 native software is a setld kit. It contains the following subsets: DFABASE520 DIGITAL Fortran 90 and 77 v5.2 for DIGITAL UNIX Alpha Systems DFADOC520 DIGITAL Fortran v5.2 Release Notes and Man Pages DFACOM520 DIGITAL Fortran v5.2 Tools and their Man pages DFARTL384 DIGITAL Fortran Runtime Support for DIGITAL UNIX Systems (f90 and f77) HPFLIBS170 High Performance Fortran Run-Time Libraries OTABASE204 DIGITAL Compiled Code Support Library #204 XMDLOA350 the serial DXML archive library and shared library XMDMAN350 the DXML manpages XMDSCI350 the SCIPORT Cray compatibility library and manpages XMDPLL350 the parallel DXML shared library For a detailed description of the installation procedure, see the DIGITAL Fortran Installation Guide for DIGITAL UNIX Systems. You may also send comments, questions and suggestions about the DIGITAL Fortran products to the following mail address: fortran@digital.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The DIGITAL Fortran home page, located at the following URL: http://www.digital.com/fortran * The DIGITAL Equipment Corporation home page, located at the following URL: http://www.digital.com Note that the compiled code support libraries {libots.a and .so} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using DIGITAL UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with DIGITAL UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) You can use the "setld -D" option to install the software to another root directory. Everything in the installation then hangs off that root. Commands like f77 can be pointed to by PATH, the DECFORT environment variable can point to where the compiler is, "-L" can tell f77 where the RTL is, and the LD_LIBRARY_PATH environment variable can be used to ensure that the desired version of shareable libraries are picked up at run time. 1.2 DFAO Files The following files and their what(1) strings are included in the v5.2 release: decfort DIGITAL Fortran 77 V5.2-171 -428BH fort DIGITAL Fortran 77 Driver V5.2-10 fortpr DIGITAL Fortran Printer Driver V5.2-3 fsplit DIGITAL Fortran 77 File Splitter V5.2-8 fpp DIGITAL Fortran Preprocessor V1.0-1 decfort90 DIGITAL Fortran 90 Compiler V5.2-705 -428BH f90_split DIGITAL Fortran 90 File Splitter V5.2-8 DFARTL384 contains libFutil.a Digital Convert RTL V1.1-80 1+ 5-jul-1998 libUfor.a Digital Fortran Unsupported RTL V1.1-28 1+ 10-mar-1998 libfor.a Digital Fortran RTL V1.1-615 1+ 16-nov-1998 libFutil.so Digital Convert RTL V1.1-80 1+ 5-jul-1998 libUfor.so Digital Fortran Unsupported RTL V1.1-28 1+ 10-mar-1998 libfor.so Digital Fortran RTL V1.1-615 1+ 16-nov-1998 for_msg.cat Digital Fortran RTL Message Catalog V1.1-15 18-Jun-1997 for_main.o Digital Fortran "main" program V1.0 The listing file version string in the page header is "DIGITAL Fortran 77 V5.2-171" OTABASE204 contains libots3.a V1.0-030 GEM 9 Oct 1998 libots3.so V1.0-030 GEM 9 Oct 1998 1.3 What Has Changed in DFAO v5.2 from DFAO v5.1 o The following changes were made to the decfort compiler from edit -157 through -169 {ft1}: - Get underflowing real*4 parameter constants correct: PARAMETER (X=1.E-38). - Passing (int4_const) gives integer*8, resulting in mismatched arg warning. - Get locator correct for NOSFILE callback message (avoid internal error with -S). - Fix IF(ARRAY(LOGICAL_AND/OR).ne.0)THEN construct. - Produce objects for comma list files after one file gets fatal error. - Do not issue standard warning for FILE=char_array_ref (like C(I) ) in OPEN statement. - Make VOLATILE set pointer_aliased = assumed_true. - Allow hollerith parameter constant with /DEBUG. - Separate N, STRUCT.STRING(1:N) in an IO list -- otherwise an old value of N is used. - If COMMON /X/ I;PARAMETER(I=3), do NOT make I a parameter (avoid ICE in COMMON processing). - Do NOT delete pointer symbols for pointees that are not deleted (pointee record). o The following changes were made to the f77 driver {ft2}: - Pass -K to cc. Make the output file names use the input file base name. o The following changes were made to the decfort compiler from edit -170 through -171 {ft2}: - Let the debugger see automatic array bounds under -g1 as well as -g2. - Make AIMAG generic (identical to IMAG). o The following changes were made to the decfort compiler {ft2 to v5.2}: - none o The following changes were made to the f77 driver {ft2 to v5.2}: - When "-arch ev6" is used, the f77 driver will add "-qlm_ev6" before "-lm" on the cc command so ld will look for the EV6-tuned math library. o The following changes were made to the run-time support: Here are the changes made in the RTL since #379. Customers may ignore the DEC-internal tracking information following the description. o DFARTL379 is -500 of 22-feb-1998, shipped in DFA510 on 4-Mar-1998 o DFARTL380 is DFARTL379 relinked with a new so_locations file for UNIX on 21Apr98. o changes between 24-Feb-1998 and 10-Jun-1998 in -501 to -550: - When specifying an OPEN on a connected unit and not specifying a file name, the old file was closed and a new temporary file was created. The correct behavior is that no CLOSE is done, and that various keywords should be used to modify the already connected unit. In addition, the keywords: CARRIAGECONTROL, CONVERT, DISPOSE, ERR, and IOSTAT were added as modifiers. (dfb2882 & dvf2253) - For engineering (EN) formatting, the absolute value of the digits to the left of the decimal must be greater than or equal to 1 and less than 1000 and the exponent must be divisible by 3. To achieve this format, the rtl may reduce the precision of it's intermediate result and round up if necessary. The round up algorithm was producing incorrect results. (dvf2446, dvf2485, dfb2896) - When a filename of either blank or the name of a valid directory (some examples: "/usr", "./", etc..) were specified on an INQUIRE statement, the run-time support was falsely returning an "exist=.TRUE.". This problem was fixed. (dfb2857) - When an output conversion error occurred for a formatted output statement that specified non-advancing I/O (advance='no'), the formatted information was not being generated into the output stream. This problem has been fixed. (dvf2616) - The run-time support was modified to not require a record terminator or on the last record of a formatted data file. Prior to this change, an end of file during read was generated when this condition was encountered. - On all platforms, the run-time libraries format interpreter was able to handle a repeat count value of only 32767. This value has been increased to 2147483647. (dfb2909 & dvf2628) - With F77, if an internal read or write specifies a zero length character variable as the 'unit', e.g. read(string(4:1),...), the F77 compiler would pass the rtl a negative value for the length of the variable. This led to the rtl generating an access violation on vms or seg fault on unix. The F77 standard makes a strong assumption that the user must guard against creating reference to zero length strings, not the compiler. However, DEC Fortran has chosen to make zero length items in F77 work similar to F90 in many places and that is the solution chosen again here. If the rtl sees a negative length, the length is set to zero and F90 behavior is produced. (dfb2766) - A number of problems related to handling of zero sized arrays and zero length character strings were fixed. (dvf403 & dvf2501) The specific details: Sequential/List Directed Sequential/Direct Access formatted reads/writes: > The rtl incorrectly interpreted nonzero sized arrays of zero length strings as being zero sized arrays. This is fixed in conjuction with a compiler change to pass more information to the rtl so this case can be distinguished from the case of zero sized arrays of zero length character strings. (Requires recompile.) Sequential formatted writes: > When the only item in the io list is a zero sized array, an empty record should be output. The rtl would inhibit outputting the empty record. > An empty format is only legal if the io list is empty or all io list items are zero sized. For the case of an empty format with a zero length scalar character item in the io list, the rtl did not detect an error. List Directed Sequential writes: > When the only item in the io list is a zero sized array, an empty record with a space for carriage control should be output. The rtl would inhibit outputting the record. > When outputting an empty record, the rtl did not always begin the record with a space for carriage control. Direct Access formatted writes: > When the only item in the io list is a zero sized array, an empty record, i.e., space padded to record length, should be output. The rtl would inhibit outputting the record, leaving all zero's in the record. Now it leaves all spaces in the record. > Checks for infinitely looping format and empty format that were applied to sequential formatted writes were missing for direct formatted writes. These are now added. Sequential formatted/List Directed Sequential reads: > The rtl incorrectly treated zero sized arrays in the io list as effective items resulting in incorrect data values from the input record being assigned to iolist items. Direct Access formatted reads: > Checks for infinitely looping format and empty format that were applied to sequential formatted reads were missing for direct formatted reads. These are now added. - For an integer overflow or integer divide by zero exception on unix, the rtl exception handler did not use all available information to uniquely identify the condition from other SIGFPE conditions. The rtl generated a "floating point exception" error message. It now will check for integer overflow and integer divide by zero and generate an "integer overflow" or "integer divide by zero" error message. (dfb2933) o changes between 18-Jun-1998 and 9-Jul-1998 in -551 to -571: - A bug which prevented a list-directed read to continue where a non-advancing formatted read had left off was fixed. (dvf2813 & dvf3369) - Support for printing of minus zero for Fortran95 standard is included. Requires a new libfor and new libFutil library. Old versions of libfor will continue to work with the new libFutil, but the new libfor requires the new libFutil. - Added ISHTFC support for integer*1 and integer*8 data types. (internal note: for_i1shftc and for_kishftc on UNIX and WIN32, and DFOR$I1SHIFTC and DFOR$KISHIFTC on Alpha/VMS). (DFB2931 & Fortran_Notes 1910) - The RTL now has support for handling units *, 5 and 6 as separate units. Use of this feature, requires both rtl and compiler support. Programs must be compiled with a version of the compiler that implements this support and linked with or use a shareable rtl that implements the support. Older existing images will continue to work with the newer rtl. As a consequence of separating the units: if you were to connect unit 6 to a file, and then write to unit * - that write would produce output to the console (or stdout device). Previous to this, a write to unit * would go the same file connected to unit 6. This new behavior is consistent to that of VMS and MS-FPS. Users should be aware of one difference between DIGITAL Fortran's behavior (this includes DVF) and that of Microsoft's FPS: DIGITAL Fortran treats units 6 and * as two separate units. So, the following code segment will delimit character strings written to unit 6, but not to unit *. MS-FPS treats units 6 and * as the same unit (unless unit 6 is opened to a file). So, the same code segment will delimit character strings written to either unit. open (6,status='old',DELIM='QUOTE') write(6,*) "--QUOTE--" print *,"--QUOTE--" DIGITAL and DVF Fortran: "--QUOTE--" --QUOTE-- MS-FPS: "--QUOTE--" "--QUOTE--" (dvf3204) o changes between 10-Jul-1998 and 16-Jul-1998 in -572 to -574: - The rtl did not properly handle a formatted write of the value of 0.0 in Engineering (EN) format. The F90 standard requires there be one digit ('0') to the left of the decimal point. The rtl was forcing the field to '000' and sometimes causing an incorrect output conversion error. o DFARTL381 packaged containing -574 on 28-Jul-1998 o changes between 16-Jul-1998 and 28-Sep-1998 in -575 to -593: - For internal io, the rtl incorrectly interpreted nonzero sized arrays of zero length strings as being zero sized arrays. This is fixed in conjunction with a compiler change to pass more information to the rtl so this case can be distinguished from the case of zero sized arrays of zero length character strings. To obtain this fix, a recompile of the source program is required. (dvf4211) - Output files which were created from a routine compiled with the /VMS compile-time switch and terminated with an ENDFILE record and subsequently reopened with the position='append' specifier were not being processed properly. The RTL was modified to properly handle this situation. (dvf4540) - For F90, a Namelist input group can start with either an ampersand (&) or dollar sign ($) in any column and can be terminated by one of a slash (/), an ampersand (&) or a dollar sign($) in any column. (df2004) - For F77, a Namelist input group can start with either an ampersand (&) or dollar sign ($) in column 2 and can be terminated by one of a slash (/), an ampersand (&) or a dollar sign($) in any column except column 1. (df2004) - The RTL was generating an incorrect run-time error when a file opened with access='append' had two rewind statements performed on it. This problem has been fixed. (df2022) - For an unformatted direct access I/O statement with an IO-list containing a CHARACTER variable followed by a REAL, and for which a foreign conversion is necessary, the rtl would sometimes lose track of the need to perform the conversion. This happens with the F77 compiler when the compiler is able to perform an optimization in the rtl calling sequence which generates a compressed IO-list for the rtl. (df2021) o changes between 29-Sep-1998 and 3-Nov-1998 in -594 to -608: - The Thread-Safe version of the FORTRAN RTL automatically created 1,043 mutex lock handles regardless on the number of locks actually used. To reduce overhead, these locks will now be created on an as needed basis. - The run-time support was modified to properly allow array fields within a record whose name was F or T to be initialized by a namelist read. (dvf1024) TYPE TEST INTEGER A(2) END TYPE TYPE (TEST) F NAMELIST /NAM1/ F OPEN(1,FILE='TEST.DAT') READ(1,NML=NAM1) - A problem in the FORTRAN Runtime library for list directed sequential reads was fixed. The RTL misinterpreted the input when an input record was terminated without a comma and the following record began with a repeat count for a null item. (df2057) - The RTL was enhanced to optimize printing out unformatted COMPLEX arrays when contiguous array elements are being printed out using an implied-DO loop. complex (8) a(100000) write(20) (a(i), i= 1,99000) o changes between 3-Nov-1998 and 16-Nov-1998 in -608 to -615: - none Here is the end of the RTL changes for DFARTL383. o The following changes to DFAO documentation should be noted: - "The DIGITAL Fortran Installation Guide for Digital UNIX Systems" has been revised for v5.2. o Please note the following: - Please read the "Please note the following" sections in the attached release notes. - "-arch ev6" generates instructions for ev6 processors (21264 chips). This option permits the compiler to generate any EV6 instruction, including instructions contained in the BWX (Byte/Word manipulation instructions) or MAX (Multimedia instructions) extension, square root and floating-point convert, and count extension. Applications compiled with this option may incur emulation overhead on ev4, ev5, ev56, and pca56 processors, but will still run correctly. - The DFAO compiler now gives "uninitialized variable" warnings at optimization levels lower than -O4. - This release of DF/AU T5.2 contains DXML. DXML is distributed as a Development kit, that allows you to link an application program with the DXML library and then run the executable image. No license is required. The kit includes the following subsets: o XMDLOA350 - this subset contains the serial DXML archive library and shared library (libdxml.a, libdxml.so), along with example files, IVP tests, release notes, and other supporting DXML utilities. o XMDMAN350 - this subset contains the DXML manpages. o XMDSCI350 - this subset contains the SCIPORT Cray compatibility library (libsciport.a), and the SCIPORT manpages. o XMDPLL350 - DXML parallel subset. This subset includes the shared parallel library (libdxmlp.so) and IVP tests for the parallel library. This subset should only be installed on SMP configurations running DIGITAL UNIX Version 4.0 or later. The DXML subsets are independent from one another, except that the user must link in the DXML library (either serial or parallel) after linking with the SCIPORT library. ******************************************************************************** © Digital Equipment Corporation 1998. All rights reserved. 4-Mar-1998 1.0 DIGITAL Fortran v5.1 for DIGITAL UNIX Alpha Systems These are the release notes for Version v5.1 of DIGITAL Fortran for DIGITAL UNIX Alpha Systems. It contains bug fixes, some new features, and performance enhancements to the current versions of DIGITAL Fortran for Alpha/UNIX. These release notes describe changes made to the FORTRAN-77 based compiler (DFAO) and the common DIGITAL Fortran RTL since the DIGITAL Fortran V5.0 release. Previous version of these release notes for V5.0, V4.1 ECO 01, V4.1, V4.0 and V3.8 are appended. After installation, these release notes can be found in /usr/lib/cmplrs/fort/relnotes After installation, the release notes for the Fortran-90 based compiler can be found in /usr/lib/cmplrs/fort90/relnotes90 DFAO v5.1 will run on DIGITAL UNIX v4.0 or later systems. The compilers and run-time libraries in DFAO v5.1 will not work on DIGITAL UNIX systems older than v4.0. DFAO v5.0 has this same restriction. 1.1 Installation The DFAO v5.1 native software is a setld kit. It contains the following subsets: DFABASE510 DIGITAL Fortran 90 and 77 v5.1 for DIGITAL UNIX Alpha Systems DFADOC510 DIGITAL Fortran v5.1 Release Notes and Man Pages DFACOM510 DIGITAL Fortran v5.1 Tools and their Man pages DFARTL379 DIGITAL Fortran Runtime Support for DIGITAL UNIX Systems (f90 and f77) HPFLIBS150 High Performance Fortran Run-Time Libraries OTABASE202 DIGITAL Compiled Code Support Library #202 For a detailed description of the installation procedure, see the DIGITAL Fortran Installation Guide for DIGITAL UNIX Systems. You may also send comments, questions and suggestions about the DIGITAL Fortran products to the following mail address: fortran@digital.com Please note that this address is for informational inquiries and is not a formal support channel. If you have Internet access and a World Wide Web (WWW) viewer, you are welcome to view the following: * The DIGITAL Fortran home page, located at the following URL: http://www.digital.com/fortran * The DIGITAL Equipment Corporation home page, located at the following URL: http://www.digital.com Note that the libraries {libots} in the OTABASE subset are no longer on the DFAO kit since those libraries ship with AOSF v3.0 and later. The what string in libots.a should be "T1.3-008G GEM 9 Feb 1994" or newer. If you are using DIGITAL UNIX Version 4.0, be aware of the following changes to the OSFCMPLRS operating system subset: Beginning with DIGITAL UNIX Version 4.0, the OSFCMPLRS subset now consists of multiple subsets: OSFCMPLRS (required for program development), OSFSDE (profiling tools), OSFLIBA (archive libraries), OSFINCLUDE (include files), OSFATOM (atom tools) 1.2 DFAO Files The following files and their what(1) strings are included in the v5.1 release: decfort DIGITAL Fortran 77 V5.1-156 -3882K fort DIGITAL Fortran 77 Driver V5.1-8 fortpr DIGITAL Fortran Printer Driver V5.1-3 fsplit DIGITAL Fortran 77 File Splitter V5.1-8 fpp DIGITAL Fortran Preprocessor V1.0-1 decfort90 DIGITAL Fortran 90 Compiler V5.1-594 -3882K f90_split DIGITAL Fortran 90 File Splitter V5.1-7 DFARTL379 contains libFutil.a Digital Convert RTL V1.1-74 1+ 9-feb-1998 libUfor.a Digital Fortran Unsupported RTL V1.1-27 1+ 2-nov-1997 libfor.a Digital Fortran RTL V1.1-500 1+ 22-feb-1998 libFutil.so Digital Convert RTL V1.1-74 1+ 9-feb-1998 libUfor.so Digital Fortran Unsupported RTL V1.1-27 1+ 2-nov-1997 libfor.so Digital Fortran RTL V1.1-500 1+ 22-feb-1998 for_msg.cat Digital Fortran RTL Message Catalog V1.1-15 18-Jun-1997 for_main.o Digital Fortran "main" program V1.0 The listing file version string in the page header is "DIGITAL Fortran 77 V5.1-156" OTABASE202 contains libots3.a V0.0-019 GEM 20 Jan 1998 libots3.so V0.0-019 GEM 20 Jan 1998 1.3 What Has Changed in DFAO v5.1 from DFAO v5.0 o The following changes were made to the decfort compiler from edit -154 through -156 {ft4}: - Allow EXTERNAL foo where foo is a pointee (function/subroutine). - Give better error message for asmsymdots. - On Alpha platforms ASM support no longer requires switch fe_asm. o The following changes were made to the decfort compiler from edit -151 through -153 {ft3}: - For REWRITE, make sure small constants are promoted to default integer size. - Attribute NAMELIST code to establish the block to the NAMELIST statement (for debugging). o The following changes were made to the decfort compiler from edit -148 through -150 {ft2}: - No externally visible changes were made. o The following changes were made to the decfort compiler from edit -139 through -147 {ft1}: - Fix "POINTER(P, ARRAY(COMMON_ARRAY(IDUMMY),IDUMMY2))". - Prevent ASF name from being passed as actual argument. - Warn when a statement function is passed an array as an actual argument. - Set "syntax" when "-stand semantics" is requested. Do not set "mia" when "-stand all" is requested. - Fix a random bug when a listing is requested. - Fix a bug where a symbol is incorrectly listed as used before defined. - Give warning for assignment to an active DO loop index variable. - Disallow %descr('foo') as I/O list element (check the mechanism). o The following changes were made to the f77 driver: - None. o The following changes were made to the run-time support: Here are the changes made in the RTL since #377. Customers may ignore the DEC-internal tracking information following the description. DFARTL379 changes between 17-Dec-1997 and 23-Feb-1998 in -484 to -500: - When writing out large arrays to an unformatted file with the convert type (e.g., big endian) specified, and the process runs out of Virtual Memory - the leading and trailing record length fields were not properly being converted. This problem has been fixed. (dfb2544 & df1643) - When a list-directed read requires: > multiple input records to complete > one input record ends with a repeat count followed immediately by a comma (105*,) and has a random number of spaces after the comma > the next input record starts with a repeat count immediately followed by a comma (95*,) the run-time support was improperly reading in one less input item than it should have. This problem has been fixed. (dvf1779) - A memory leak that occurred when an internal I/O statement encountered an error involving a mismatch between the variable and format was fixed. (dfb1691) - Support for the Fortran 95 new feature minimum field width was added. - Fixed a problem with input padding in sequential formatted READ's. If the format specification calls for a field width greater than 42, for any type of edit descriptor, and the length of the input record is less than the specified field width, the fortran rtl would incorrectly generate an input conversion error. (df1706) DFARTL378 changes between 25-sep-1997 and 17-Dec-1997 in -471 to -483: - The conversion type (i.e., big_endian) was not properly set when reopening a file after an implicit close. (dfb2772) - NAMELIST input, when the f77 compiler is used, was not allowing whitespace between the left parenthesis "(" and first numeric value of a complex number. This problem has been fixed. (dvf1042) - The RTL jacket routine for calling signal() was improperly returning an int and has been changed to properly return a long. (dfb2760) - A bug was fixed such that a file opened for APPEND access that has a REWIND will now allow BACKSPACE statements following the REWIND. (dvf1307) - SYSTEM_CLOCK now returns the number of seconds from 00:00 CUT 1 JAN 1970. The number is scaled depending on the size of the target as follows: target units ------------------------------------------ 2 bytes millisecs (10** -3) 4 bytes 100-microsecs (10** -4) 8 bytes microsecs (10** -6) The number is now returned with no bias. To obtain the elapsed time, it is necessary to call SYSTEM_CLOCK twice, and subtract the starting time value from the ending time value. Prior to this change the first call to SYSTEM_CLOCK effectively zeroed the clock register and subsequent calls returned a type of elapsed time. After examining other implementations and the F90 standard, and looking at the probable uses of SYSTEM_CLOCK, it was decided that SYSTEM_CLOCK would be more useful without the bias. - When stdin is redirected from a file and not all of the data in that file has been read before closing it, the rtl issued the following error message: forrtl: severe (28): CLOSE error, unit 5, file "Unknown" This problem has been fixed. (DFB2805) Here are the changes made in the RTL since #376. Customers may ignore the DEC-internal tracking information following the description. DFARTL377 changes between 10-Jul-1997 and 25-sep-1997 in -453 to -470: - This DFA RTL is built with C version 5.2. It is only supported on UNIX V4 systems and is not intended to support prior versions. - A problem existed when using a Fortranprogram to read from stdin from inside a shell script that redirects stdin to a file: each subsequent execution of the program from within the script started reading too far down the file. This problem has been fixed. (dfb2656) - Previously, for list directed reads to both internal and external files, and namelist io reads, an input value beginning with {E|D|Q}, or a value consisting solely of a single letter from {E|D|Q}, was interpreted at runtime as {0E0|0D0|0Q0} (i.e., zero). This is no longer the case. Such an input does not constitute a well-formed numeric constant according to Fortran syntax and is now treated as an input syntax error. This applies to lower case also {e|d|q}. (dvf16 & dfb2612) - The internal format of Segmented files with the convert type of big-endian has been fixed to be compatible with those of VAX FORTRAN. This means that previously created Segmented files with big-endian convert type can not be read in with the new RTL without some file conversion. (dfb2752) o The following changes to DFAO documentation should be noted: - None. o Please note the following: - As of DIGITAL UNIX v4.0, constants in f77 code are placed in read-only memory. An attempt to modify a constant {as in the example below} has always been an error but will now cause the program to abort: CALL F (1) ... SUBROUTINE F (I) I = 2 - A change in the math library {libm} starting with DIGITAL UNIX v4.0B is that MOD(3.0,0.0) now returns "floating invalid"; it used to return "0". - Several new intrinsics are now available in f77. More detailed descriptions may be found in the DF77AU help file {installed as /usr/lib/cmplrs/fort/decfortran.hlp}: * ASM,FASM, DASM - execute in-line assembler code * LEADZ and TRAILZ - count leading and trailing 0 bits * POPCNT - count 1-bits * POPPAR - parity of an integer * MULT_HIGH - multiply two 64-bit unsigned integers - shcom_connect(3f) is a user-callable method for sharing writeable COMMON in Fortran and C. There are restriction that must be observed for the correct sharing to take place: * all data to be shared must reside in a COMMON block * only COMMON blocks that will be shared should be listed in the BLOCK DATA subprogram used to build the .so * each COMMON block listed in the BLOCK DATA must have at least one of its elements initialized via a DATA statement * The BLOCK DATA that defines the shared COMMONs must not declare any local data, ie, data that is not to be shared - Using "-warn truncated_source" will produce warning messages on source lines that overflow the right margin of the statement field {column 72 or column 132}, even if the truncated characters are part of a comment. - The current release of KAP Fortran 77 for Unix (v3.1a) does a check at installation time to make sure that you have Fortran v4.* installed. The KAP installation will fail if you try to install KAP on a system with DIGITAL Fortran v5.0 or newer because the KAP installation script is looking for Fortran v4.*. To get around this, you need to edit the installation script, KPFBASE311.scp, and change the line: STL_DepEval DFABASE4?? || { to the line: STL_DepEval DFABASE??? || { The next release of KAP Fortran 77 for Unix will install and work correctly with DIGITAL Fortran v5.0 and newer. - When using the -S command line option to build an assemblable .s file, the compiler turns all local variables into names that start with $$. This is done is to ensure that local variables do not conflict with any global variables in the application. There is no concept of "local" vs "global" symbols in .s files. - The X-Open Standard followed by DIGITAL UNIX made a change to its "pow" function that affects Fortran's "**" operation: (0.0)**Y for all negative values of Y {single or DOUBLE PRECISION} will now return "-Infinity" {using -fpe3}; it used to return "+Infinity". - The UNIX linker will give an error error: /sbin/loader: fatal error set program attributes failed to set heap-start. when there isn't enough room to map the program. The message will be changed to Program exceeds datasize limit in a future release of UNIX. The fix is to increase the datasize limit with the C shell command limit datasize unlimited - Touching uninitialized pointers can cause program failure. The uswitch(2) function call changes the semantics of these accesses: When the USW_NULLP bit of uswitch is set to 1, the System V method of treating NULL pointers is applied. In this method, references to a NULL pointer always returns zero (0). When this bit-mask is reset to zero (0), subsequent references to a NULL pointer generate a segmentation violation signal (SIGSEGV). - Please read the "Please note the following" sections in the attached release notes. ******************************************************************************** © Digital Equipment Corporation 1997. All rights reserved. 15-Sep-1997 1.0 DIGITAL Fortran v5.0 f