DEC C CCAE04062 Compaq C V6.2 for OpenVMS Alpha ECO Summary
TITLE: DEC C CCAE04062 Compaq C V6.2 for OpenVMS Alpha ECO Summary
New Kit: 22-SEP-2000
Modification Date: 06-MAR-2001
Modification Type: DOCUMENTATION: Added note below regarding kit
installation failure workaround.
NOTE: An OpenVMS saveset or PCSI installation file is stored
on the Internet in a self-expanding compressed file.
For OpenVMS savesets, the name of the compressed saveset
file will be kit_name.a-dcx_vaxexe for OpenVMS VAX or
kit_name.a-dcx_axpexe for OpenVMS Alpha. Once the OpenVMS
saveset is copied to your system, expand the compressed
saveset by typing RUN kitname.dcx_vaxexe or kitname.dcx_alpexe.
For PCSI files, once the PCSI file is copied to your system,
rename the PCSI file to kitname-dcx_axpexe.pcsi, then it can
be expanded by typing RUN kitname-dcx_axpexe.pcsi. The resultant
file will be the PCSI installation file which can be used to install
the ECO.
Copyright (c) Compaq Computer Corporation 2000, 2001. All rights reserved.
PRODUCT: Compaq C for OpenVMS Alpha (formerly DEC C)
OP/SYS: OpenVMS Alpha
SOURCE: Compaq Computer Corporation
ECO INFORMATION:
ECO Kit Name: CCAE04062
ECO Kits Superseded by This ECO Kit: CCAE03062
CCAE02062
CCAE01062
ECO Kit Approximate Size: 45,738 Blocks
Kit Applies To: Compaq C V6.2 for OpenVMS Alpha
OpenVMS Alpha V6.2 and higher
System/Cluster Reboot Necessary: No
Installation Rating: INSTALL_UNKNOWN
Kit Dependencies:
The following remedial kit(s) must be installed BEFORE
installation of this kit:
None
In order to receive all the corrections listed in this kit,
the following remedial kits should also be installed:
None
NOTE: This kit, CCAE04062, is a partial kit contained in one saveset
(CCAE04062.A). However, the KITINSTAL.COM procedure for this
kit offers the installer the option to install some optional
documents that are not provided in this kit.
If the installer answers "YES" to the prompt, KITINSTAL calls the
VMSINSTAL routine VMI$CALLBACK RESTORE_SAVESET to restore saveset
B -- and then fails because the kit does not include a saveset
CCAE04062.B.
To work around this problem, answer NO to the prompt:
HTML, postscript and text versions of the Compaq C Users Guide,
Language Reference Manual and RTL Reference Manual may be optionally
installed into SYS$COMMON:[SYSHLP.CC$ALPHA_HELP_062].
These documents consume approximately 40000 blocks.
* Should these manuals be provided [NO]: NO
ECO KIT SUMMARY:
An ECO kit exists for Compaq C V6.2 (formerly DEC C) for OpenVMS Alpha
on OpenVMS Alpha V6.2 and higher. This kit addresses the following
problems:
Problems addressed in CCAE04062:
o When the return statement of an old-style function definition
contained a recursive call, the compiler would sometimes
try to replace the recursive call with a loop construct
that did not correctly intialize all the loop control elements.
[First corrected in V6.2A ECO kit 4, compiler ident V6.2-009.]
o In circumstances that cannot easily be characterized at the
source code level, optimization of the code generated
for the va_arg macro (for traversing variable-length
argument lists) could produce an incorrect result - in
some cases accessing the argument value following
the one that should have been accessed. [First corrected
in V6.2A ECO kit 4, compiler ident V6.2-009.]
o The compiler could incorrectly optimize certain loops in which
computation of the trip count depended on loop bounds and/or
increments that were run-time expressions that were not made
into CSEs. This could manifest either as incorrect code or an
internal error. [First corrected in V6.2A, compiler ident
V6.2-008.]
o The compiler emits the message bltinimplret by default when
certain runtime library functions that do not return an int are
called without including the appropriate header. This message
is confusing to many users when it appears in existing
well-debugged applications.
The compiler has been changed so that bltinimplret is no longer
emitted by default, but only when enabled explicitly (or as
part of the performance or level5 message groups). [This change
first appeared in ECO kit 3, compiler ident V6.2-007.]
o Sometimes the compiler may hang when large programs containing
misaligned data are compiled with the /DEBUG qualifier and
optimization is not suppressed.
The compiler now runs to completion in this sitaution. [This
problem was fixed in ECO kit 2, compiler ident V6.2-006.]
o Sometimes the compiler may incorrectly optimize away the
"store" instruction that performs an assignment to a struct
member. The only reliable workaround is to compile
/NOOPTIMIZE.
The compiler now produces the correct code to store the values.
[This problem was fixed in ECO kit 2, compiler ident V6.2-006.]
o The __CMP_STORE_QUAD built-in function converts its 3rd
parameter (the new value to be stored) to a signed 32-bit
value, silently truncating significant bits if passed a value
not representable as a 32-bit signed int.
The builtin now properly uses the full 64-bit value. [This
problem was fixed in ECO kit 1, compiler ident V6.2-005.]
Problems addressed in CCAE03062:
o The compiler emits the message bltinimplret by default when
certain runtime library functions that do not return an int are
called without including the appropriate header. This message
is confusing to many users when it appears in existing well-debugged
applications.
The compiler has been changed so that bltinimplret is no longer
emitted by default, but only when enabled explicitly (or as part
of the performance or level5 message groups).
Problems addressed in CCAE02062:
o The compiler may hang when large programs containing
misaligned data are compiled with the /DEBUG qualifier and
optimization is not suppressed.
o The compiler may incorrectly optimize away the "store"
instruction that performs an assignment to a struct member.
The only reliable workaround is to compile /NOOPTIMIZE.
o This kit includes a fix which was made available in the ECO1 kit for
a problem with the __CMP_STORE_QUAD built-in function
with 64-bit parameters.
Problems addressed in CCAE01062:
o Using the __CMP_STORE_QUAD built-in function with a 64-bit value
as the third parameter of the built-in will cause the compiler
to generate code that truncates the third parameter to 32-bits.
Customers who do not use the __CMP_STORE_QUAD built-in function
or who use it with a 32-bit values will not need this kit.
Please see the Release Notes included in this kit for more details.
INSTALLATION NOTES:
The system does not need to be rebooted after this kit is installed.
Please note that this is not a complete kit. If Compaq C V6.2 for
OpenVMS Alpha is not already installed on the system, please use
VMSINSTAL to install CC062 in the usual manner before installing this
ECO kit. When installing this kit, please note that the saveset name
is CCAE03062 rather than the CC062 saveset name which is specified in
the installation guide:
$ SET DEF SYS$UPDATE
$ SET PROCESS /PRIV=ALL
$! if V6.2 not already installed then
$! @VMSINSTAL CC062 disk$:[dir]
$ @VMSINSTAL CCAE04062 disk$:[dir]
All trademarks are the property of their respective owners.
This patch can be found at any of these sites:
Colorado Site
Georgia Site
Files on this server are as follows:
ccae04062.README
ccae04062.CHKSUM
ccae04062.CVRLET_TXT
ccae04062.a-dcx_axpexe
ccae04062.CVRLET_TXT
|