HP aC++ A.03.85 Release Notes

HP aC++ Release Notes
New Features in Version A.03.04
Chapter 166
New Features in Version A.03.04
New features in HP aC++ version A.03.04 are listed below.
The aC++ default template instantiation mechanism has changed to compile-time
instantiation (CTTI). For source code containing templates, the new default may result in
faster compile-time processing.
The previous default behavior remains available by specifying the +inst_auto
command-line option when compiling and linking. If you provide archive or shared
libraries for distribution, you may want to use +inst_auto to ensure consistent behavior
between each distribution of your libraries.
Also, if you provide either archive or shared library products, and your customers need to
use the prior template instantiation default in their builds, you must compile your
libraries by using the +inst_auto option.
Refer to HP aC++ Online Programmer’s Guide and to the online technical paper, Using
Templates in HP aC++ for details about template instantiation and migration.
Member templates are supported, including those in pre-compiled headers.
Updated versions of the Rogue Wave Standard C++ Library (version 1.2.1) and the
Tools.h++ Foundation Class Library (version 7.0.6) are provided. HTML documentation
for these libraries is also updated.
The aC++ compiler on HP-UX 11.00 includes support for both the 32-bit data model
(ILP32) and the 64-bit data model (LP64). For ILP32, integer, long, and pointer data
is 32 bits in size. For LP64, long and pointer data is 64 bits in size, an integer is 32 bits.
The default target architecture continues to be determined by the host system and the
/opt/langtools/lib/sched.models file. The default compilation mode remains
unchanged (32-bit).
The new HP-UX 64-bit Porting and Transition Guide includes extensive 32-bit/64-bit
information. 64-bit information is also found in the HP Linker and Libraries User Guide
and in the HP aC++ Online Programmer’s Guide.
•By default, the new __LP64__ preprocessing macro is defined by the compiler when
processing in 64-bit mode. The compiler defines the __PA_RISC2_0 macro for PA2.0 in
both 32-bit and 64-bit modes. You can use these macros within conditional directives to
isolate 64-bit code.
New 64-bit system libraries are located in /usr/lib/pa20_64. 32-bit libraries remain in
/usr/lib.