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

In next release, default C compilation mode will change from C89 to C99
In the next version of the HP C/aC++ compiler, the default C compilation mode will change from
C89 to C99. So cc -Ae or aCC -Ae will be the same as -AC99, and C99 features will be
enabled.
Users can prepare for this transition by adding -AC99 to their build options and addressing any
issues. Errors that can happen with -AC99 include:
enum out of range:
error #2066: enumeration value is out of "int" range
error #4041: enumeration value is out of "char" range
Restriction on constant expressions:
error #2057: this operator is not allowed in a constant expression
error #2028: expression must have a constant value
Was this:
warning #4045-D: non-constant initialization performed at runtime
Non-static inline can't reference static:
error #3031-D: an entity with internal linkage cannot be referenced
within an inline function with external linkage
Use of inline or restrict as variables/functions/types. New diagnostics will be added
to warn users about the use of inline and restrict in this release (A.06.20). For example:
4347 %s is a keyword in the C99 C Standard, and its usage as an
identifier will cause an error in C99 mode
In next release, default C++ compilation mode will change to full -AA
In the next version of the HP C/aC++ compiler, the default C++ compilation mode will change
from almost -AA to -AA. This will enable -Wc,-ansi_for_scope,on. This is being done to
reduce porting efforts by meeting the C++ Standard.
Users can prepare for this transition by adding -AA to their build options and addressing any
issues. Errors and warnings (with unintended runtime results) that can happen with
-Wc,-ansi_for_scope,on include:
Loop index is no longer in scope after the for loop body:
error #2020: identifier "i" is undefined
Reference to outer scope variable instead of loop index:
warning #2780-D: reference is to variable "i" (declared at line X) --
under old for-init scoping rules it would have been variable "i"
(declared at line Y)
With +wlint:
warning #3348-D: declaration hides variable "i" (declared at line X)
By also compiling with +We2780, the two errors, 2020 and 2780, should catch any issues resulting
from the change in the C++ default.
If you are already using -Aa, this also enables the new default.
New features in version A.06.15
Version A.06.15 of the HP aC++ compiler supports the following new features:
printf, fprintf Optimization (New)
+Wmacro Option (New)
+Wcontext_limit Option (New)
+wperfadvice Option (New)
30 Product changes in earlier versions