HP aC++/HP C A.06.20 Release Notes
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)
• +Wv Option (New)
• +wlock Option (New)
• +O[no]autopar Option (New)
• +O[no]loop_block Option (New)
New Features in Version A.06.15 17