HP aC++/HP ANSI C A.06.27 Release Notes

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 the Pragmas and Attributes online help topic for additional information.
Improved diagnostics
Diagnostic messages now include more context to aid in tracing their root causes, including an
improved template instantiation traceback.
C++ Standard library change
Technical Corrigenda 1 has changed the STL function make_pair to take their arguments by
value instead of const reference. This change brings the HP library into compliance if the enabling
macro -D__HP_TC1_MAKE_PAIR is specified at compile time. For binary compatibility reasons,
the default behavior is unchanged.
Earlier versions
Information on features introduced in versions before A.06.12 can be found in Release Notes for
each compiler version located at the HP documentation website: www.docs.hp.com
40 Product changes in earlier versions