DEC Fortran FORTAVE01070 F77 _ F90 Compiler Alpha ECO Summary
NOTE: An OpenVMS saveset or PCSI installation file is stored
on the Internet in a self-expanding compressed file.
The name of the compressed file will be kit_name-dcx_vaxexe
for OpenVMS VAX or kit_name-dcx_axpexe for OpenVMS Alpha.
Once the file is copied to your system, it can be expanded
by typing RUN compressed_file. The resultant file will
be the OpenVMS saveset or PCSI installation file which
can be used to install the ECO.
Copyright (c) Digital Equipment Corporation 1996. All rights reserved.
PRODUCT: Digital Fortran for OpenVMS Alpha Systems V7.0
COMPONENTS: Fortran 77
Fortran 90
OP/SYS: OpenVMS Alpha V6.1 and Higher
SOURCE: Digital Equipment Corporation
ECO INFORMATION:
ECO Kit Name: FORTAVE01070
ECO Kits Superseded by This ECO Kit: None
ECO Kit Approximate Size: 25615 Blocks
Kit Applies To: Fortran V7.0
System/Cluster Reboot Necessary: No
ECO KIT SUMMARY:
An ECO kit exists for Fortran V7.0 on OpenVMS Alpha V6.1 and higher.
This kit addresses the following problems:
The following changes and corrections were made to the Digital Fortran 90
compiler:
o Compiler limit of 20 INCLUDE files per compilation unit. There is
no longer any fixed limit for the number of INCLUDE files. INCLUDE
nesting depth limit is 20.
o Compiler limit of 99 continuation lines was raised to 511.
o Compiler did not completely honor OPTIONS /[NO]G_FLOAT.
o Compiler abort with certain types of pointer assignment.
o Incorrect error message for nested STRUCTUREs.
o Inconsistent severity for undeclared variable message with IMPLICIT
NONE or command line switch.
o Incorrect error about passing LOGICAL*4 to a LOGICAL*1 argument.
o Lack of standards warning for non-integer expressions in computed
GOTO.
o Incorrect flag NAME= as nonstandard in INQUIRE.
o Lack of standards warning for AND, OR, XOR intrinsics.
o VOLATILE attribute not honored for COMMON variables.
o COMPLEX expression not allowed in variable format expression.
o Adjustable array not allowed to be declared AUTOMATIC (AUTOMATIC
declaration is ignored).
o /RECURSIVE not honored in main program.
o Parsing error with DO-loop has bounds of -32768, 32767.
o Compiler abort when extending generic intrinsic.
o SAVEd variable in inlined routine didn't always get SAVEd.
o Compiler abort with initialization of CHARACTER(LEN=0) variable.
o Incorrect values of PRECISION, DIGITS, etc. for floating types.
o Incorrect value of INDEX with zero-length strings.
o Incorrect value for SELECTED_REAL_KIND in PARAMETER statement.
o Incorrect compile-time result of VERIFY.
o Routine using IARGPTR or IARGCOUNT corrupts address of passed
CHARACTER argument.
o Lack of standards warning for CMPLX() in initialization expression.
o Compiler abort when %LOC(charvar) used in statement function.
o Incorrect initialization of STRUCTURE array.
o Compiler abort with large statement function.
o RESHAPE of array with a zero bound aborts at runtime.
o /INTEGER_SIZE not honored.
o SIZEOF(SIZEOF()) should be 8.
o Error parsing a derived type definition with a field name starting
with "FILL_".
o With OPTIONS /NOI4, compiler complained of IAND with arguments of an
INTEGER*4 variable and a typeless PARAMETER constant.
o Incorrect standards warning for DABS.
o Lack of Error message for ambiguous generic.
o FOR$RAB was not always considered as returning an INTEGER*4.
o Error parsing field array reference in IF.
o Bit constants in argument lists should be typed based on value, not
"default integer".
o Compiler did not allow module to use itself.
o Lack of standards warning for Hollerith constant.
o Wrong values for TINY, HUGE for VAX floating.
o EXPONENT() with /FLOAT=D_FLOAT references non-existent math routine.
The following changes and corrections were made to the Digital Fortran 77
compiler:
o .AND. and .OR. expressions in logical IFs now evaluate left-to-right
more often, find more short circuits, and generate better code.
o Allow dummy arguments to ENTRY statements to occur in the
declaration phase, eg: PARAMETER SX = SIZEOF (X) where X only occurs
as an ENTRY argument later.
o Allow %VAL(expression) as the argument to LIB$ESTABLISH.
o Make it easier for the debugger to find the start of a routine.
o Make CPPFILERR a warning {not an error} so that # 2000 "xxx.F" is
ignored when xxx.F is not present.
o Put out better information for FUNCTION/ENTRY names for debugging.
o Make ALTRETOMI an informational for return with alternate label when
no * in any dummy argument list.
o Give better error message for bad character in octal/hex constant.
o Allow I/O keywords to be blank padded (for compile time constants).
o /INTEGER_SIZE= should affect constants in output statements, e.g.
TYPE *,1,2,3. This is an incompatible change.
o Allow continued DICTIONARY statement.
o Let DICTIONARY definitions use their own /ALIGN setting (instead of
forcing /ALIGN=RECORD=PACKED).
o Give informational (BRNCHINTOBLK) for jumping into block or loop
from outside: "Questionable branch into loop or block".
o Give an error (INVSUBUSE) when subroutine/entry names are used as
functions: "This name cannot be used as a function reference".
o Make it possible to pass CHARACTER*(*) function names again.
o Allow POINTER to functions/subroutines.
o Fix the listing of /BY_REF_CALL to list more than the first routine
name.
o Allow an optional ":" between CDEC$ TITLE SUBTITLE and the
"[sub]title".
o Add YEAR2000 warning for DATA/IDATE, suppressed by /WARN=NOUSAGE :
"Two-digit year return value may cause problems with the year 2000".
o Suppress BRNCHINTOBLK under /WARN=NOUSAGE.
o Don't issue CHACONCONTD more than once per statement.
o Fix variable lower bounds for second dimension so they don't cause
assertions.
o Give error message (BADRANDU) for incorrect arguments to RANDU:
"Intrinsic RANDU arguments should be: (integer*2, integer*2, real*4)"
o Catch adjustable array used as namelist element (avoid internal
error).
o Code generation bugs were fixed in CHARACTER argument setup,
register reuse, loop reductions, and backwards loops.
Please see the Release Notes included in the kit for more detailed
information.
INSTALLATION NOTES:
This ECO kit is installed using the VMSINSTAL mechanism, not the
POLYCENTER Software Installation (PCSI, PRODUCT INSTALL command)
mechanism used for the full kit. This is due to problems the current
version of PCSI has with partial update kits. These problems are
expected to be corrected in future versions of OpenVMS Alpha.
To install this kit on an OpenVMS Alpha system, follow these steps:
1. Log into the SYSTEM account or another account that has the CMKRNL,
SYSLCK and SYSPRV privileges. Make sure these privileges are
enabled by typing the command:
$ SET PROCESS /PRIVILEGES=(CMKRNL,SYSLCK,SYSPRV)
2. Verify that Digital Fortran V7.0 is installed by typing the command:
$ PRODUCT SHOW PRODUCT FORTRAN
If V7.0 is installed, you will see a display similar to the
following:
PRODUCT
-------
DEC AXPVMS FORTRAN V7.0-1
The version string must begin with "V7.0" in order to proceed. This
update is applicable to V7.0 ONLY.
3. Locate the ECO installation kit file. If the file name is
FORTAVE01070.A, skip to step 4. If the file name is
FORTAVE01070.A-DCX_AXPEXE, it is in a self-expanding compressed
format. To expand the kit, type the command:
$ RUN FORTAVE01070.A-DCX_AXPEXE
Press return at the prompt to use the original filename. The
expansion process will create FORTAVE01070.A.
4. Begin the installation process by typing the command:
$ @SYS$UPDATE:VMSINSTAL FORTAVE01070 disk:[dir]
where "disk:[dir]" is the disk and directory containing the kit
file.
If VMSINSTAL warns you that other processes are still active and asks
if you wish to continue, respond YES. If you are satisfied with your
system backup, respond YES to the backup prompt.
The installation then begins, displays a copyright notice, and asks:
* Do you want to purge files replaced by this installation
[YES]?
A YES response is recommended.
5. The installation procedure then verifies that you have Digital
Fortran V7.0 installed. If you did not install both Digital Fortran
90 and Digital Fortran 77, the procedure will update the compiler
you installed. The procedure first displays the version of Digital
Fortran 77 it found (if any), the new version that will be
installed, and asks if the update should be performed. For example:
Checking for installed components....
Found Digital Fortran 77 7.0-6-3245
New version will be..... 7.0-42-3278
* Do you want to update Digital Fortran 77 [YES]?
Press RETURN if you wish to update Digital Fortran 77.
The procedure repeats this step for Digital Fortran 90:
Found Digital Fortran 90 7.0-20
New version will be..... 7.0-140
* Do you want to update Digital Fortran 90 [YES]?
Press RETURN if you wish to update Digital Fortran 90.
6. The procedure then asks:
* Do you want to run the IVP after the installation [YES]?
Press RETURN to have the Installation Verification Procedure
executed after installation. This will perform basic tests to make
sure the compiler update is properly installed.
7. The installation procedure then completes the update and runs the
IVP (if selected), and VMSINSTAL exits.
8. If you are installing this update on a VMScluster with other Alpha
nodes, the following commands must be executed on all other Alpha
cluster nodes:
$ INSTALL REPLACE SYS$LIBRARY:DCLTABLES.EXE
$ @SYS$STARTUP:FORT$STARTUP
These commands require CMKRNL privilege.
Failure to perform this step may prevent the updated command tables
or compiler from being available on other cluster nodes.
9. Inform all users that they should log out and in again, or type:
$ SET COMMAND /TABLES=SYS$LIBRARY:DCLTABLES
to make the updated command tables available to their process.
Failure to do this will prevent the Fortran 90 compiler from
executing.
10. Read the release notes, which are provided in the following files:
SYS$HELP:FORTRAN.RELEASE_NOTES (text)
SYS$HELP:FORTRAN_RELEASE_NOTES.PS (PostScript(TM))
SYS$HELP:FORTRAN_RELEASE_NOTES.DECW$BOOK (Bookreader)
Inform users on the system of the release notes location.
A reboot is not required after installation.
If you have problems installing this ECO kit, please report the problem
to your local Digital support center or send Internet mail with details
(and a log of the installation attempt) to fortran@digital.com.
This patch can be found at any of these sites:
Colorado Site
Georgia Site
Files on this server are as follows:
fortave01070.README
fortave01070.CHKSUM
fortave01070.CVRLET_TXT
fortave01070.a-dcx_axpexe
|