HP aC++ A.03.85 Release Notes

HP aC++ Release Notes
New Features in Version A.03.27
Chapter 152
New Features in Version A.03.27
New features in HP aC++ version A.03.27 are listed below.
Rogue Wave Standard C++ Library 2.2.1
Transitioning from the Prior to the New Standard C++ Library
Incremental Linking in 64-bit Mode
Rogue Wave Standard C++ Library 2.2.1
The Rogue Wave Standard C++ Library 2.2.1 (libstd_v2) is now bundled with HP aC++. This
library includes the standard iostream library and has namespace std enabled.
To use the new library, you must specify the -AA command line option. Note the following:
•The +A option is not supported with -AA and may give various link or run-time errors.
The Rogue Wave Tools.h++ Version 7.0.6 library cannot be used with -AA.
The prior library (Rogue Wave Standard C++ Library 1.2.1) is the default.
The prior libraries (Rogue Wave Standard C++ Library 1.2.1 and Rogue Wave Tools.h++
Version 7.0.6) are not compatible with the 2.2.1 library. Code compiled without -AA is
incompatible with code compiled with -AA.
Common Migration Problem When Using -AA Option
The following example shows a common problem when using the -AA option. The result of
using the new overloads of strchr (on a const char*) is now a const char*. Error 440
results if “p” is not declared as a const char*.
#include <string.h>
int main() {
char *p = strchr(“abc”, ‘c’);
}
$ aCC -c strchr.c
$ aCC -c strchr.c -AA
Error 440: “strchr.c”, line 3 # Cannot initialize ‘char *’ with
‘const char *’. char *p = strchr(“abc”, ‘c’);
^^^^^^^^^^^^^^^^^^