HP aC++/HP C A.06.20 Release Notes

<envvar-options-2><file-options-2>
The config file options before the "|" character set the defaults for compilations, and
the options after the character override the users command line settings.
NOTE: No configuration files are shipped along with aC++, but can be installed by
the system administrator, if required.
[NO]PTRS_TO_GLOBALS Pragma
#pragma [NO]PTRS_TO_GLOBALS <name>
This pragma aids alias analysis. It must be specified at global scope and immediately
precede the declaration of the variable or entry named. The pragma tells the optimizer
whether the global variable or entry "name" is accessed [is not accessed] through
pointers.
-AA -D_HP_NONSTD_FAST_IOSTREAM Performance Improvement Macro
A new performance improvement preprocessor macro, _HP_NONSTD_FAST_IOSTREAM
can be used to improve -AA iostream performance.
This macro enables the following non-standard features:
Sets std::ios_base::sync_with_stdio(false), which disables the default
synchronization with stdio.
Sets std::cin.tie(0), which unties the cin from other streams.
Replaces all occurrences of "std::endl" with "\n".
Enabling this macro might result in noticeable performance improvement if the
application uses iostreams often.
NOTE: Do not enable the macro in any of the following cases:
If the application assumes a C++ stream to be in sync with a C stream.
If the application depends on stream flushing behavior with endl.
If the user uses "std::cout.unsetf(ios::unitbuf)" to unit buffer the output
stream.
New Function Attributes
__attribute__ is a language feature that allows you to add attributes to functions.
The capabilities are similar to those of #pragma. It is more integrated into the language
syntax than pragmas and its placement in the source code depends on the construct to
which the attribute is being applied.
The new function attributes in this release are "malloc", "non-exposing", "noreturn",
and "format". Refer to the Pragmas and Attributes online help topic for additional
information.
New Features in Version A.06.10 29