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

+O[no]loop_unroll_jam (Default Changed)
+Olit=all is the new default for HP C (Change)
+macro_debug= Option (New)
+pathtrace Option (New)
+check Suboptions (New)
-Bhidden_def Option (New)
-dM Option (New)
#pragma OPT_LEVEL INITIAL (New)
#pragma OPTIMIZE (Deprecated)
#pragma [NO]INLINE (New for C++ mode)
_Asm_ld, _Asm_ldf, _Asm_st, _Asm_stf intrinsics added (New)
Debugging code compiled with opt levels above +O1 now supported (New)
__attribute__ ((visibility("default"|"protected"|"hidden")))
(New)
__attribute__ ((warn_unused_result)) (New)
Change in treatment of cv-qualified assignment operators
printf, fprintf Optimization (New)
For optimization level+O2or above, printf and fprintf calls are now optimized
into fputc or fputs calls, in trivial cases.Restrictions for the optimization to occur:
A return value cannot be used for printf and fprintf. For example, use
(void)fprintf(...);
The functions printf, fprintf, fputs, and fputc must be declared in
<stdio.h> or <cstdio>.
To disable this feature for +O2and above, use: +Onolibcalls="fprintf" (or
"printf").
To have the compiler list the lines where the optimization was performed, use +Oinfo.
+Wmacro Option (New)
+Wmacro:MACRONAME:d1,d2,...,dn
The +Wmacrooption disables warning diagnostics d1,d2,...,dn in the expansion
of macro MACRONAME. If -1 is given as the warning number, then all warnings are
suppressed. This option is not applicable to warning numbers greater than 20000.
+Wmacro gets higher priority than the other diagnostic control command-line options
that are applicable to the whole source. Diagnostic control pragmas take priority based
on where they are placed.
+Wcontext_limit Option (New)
+Wcontext_limit=num
18 What’s New in This Version