A SERVICE OF

logo

Programming Release Notes
5.15 C Run-Time Library
In OpenVMS Version 8.3, changes are made to
<time.h>
to make sure the C RTL
selects the appropriate prexing for the listed functions.
5.15.4 Header File <time.h> Makes *_r Non-ANSI Functions Visible
V8.3
The C RTL functions
ctime_r
,
gmtime_r
, and
localtime_r
dened in the X/Open
specication are not in the ISO/ANSI C standard and should not be visible when
compiling only for ANSI compliance. Previously in the C RTL, they were visible.
This situation is xed. Checks are added in the
<time.h>
header to make these
functions visible only when not compiling for ANSI compliance.
5.15.5 Header File <builtins.h> _ _CMP_SWAP* and _Interlocked* Visible to
C++
V8.3
The compare and swap built-ins (__CMP_SWAP* and _Interlocked*) in
<builtins.h>
did not include the OpenVMS Alpha C++ compiler. Because
HP C++ Version 7.1 requires them, a change in conditional compilation now
makes these built-ins visible.
5.15.6 Builtin _ _fci Added for Integrity servers
V8.3
The
<builtins.h>
header le is updated with the prototype for the new
_ _fci
built-in (a built-in for the
fc.i
instruction) now supported by the HP C compiler.
5.15.7 No New Entries for DECC$*.OLB Object Libraries
V8.3
As of OpenVMS Alpha and Integrity servers Version 8.2, no new entry points are
being added to the DECC$*.OLB object libraries. This means new C RTL entry
points do not get mapped through these libraries to prexed entries. For example,
the new OpenVMS Version 8.3 entry point
crypt
, compiled with /PREFIX=NONE,
does not get mapped from
crypt
to
decc$crypt
.
5.16 Calling Standard and Rotating Registers (Integrity servers
Only)
V8.3
This note supplements information in the HP OpenVMS Calling Standard.
The Calling Standard invocation context block (ICB) (see Table 4-16 in the HP
OpenVMS Calling Standard) and mechanism vector (see Figure 8-7 and Table
8-6 in the HP OpenVMS Calling Standard) always record general, oating-point,
and predicate registers as if the register rename base (CFM.rrb) and rotating
size (CFM.sor) were both zero. That is, when rotating registers are in use, the
effects of the rotation are ignored. This is also true of the register masks used
by the LIB$I64_PUT_INVO_REGISTERS routine (see Section 4.8.3.13 in the HP
OpenVMS Calling Standard), because these masks are dened in terms of elds
in the ICB structure.
Programming Release Notes 5–13