HP aC++/HP ANSI C A.06.27 Release Notes
• +Wv Option (New)
• +wlock Option (New)
• +O[no]autopar Option (New)
• +O[no]loop_block Option (New)
• +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. This optimization will only occur when both the following are true
• A return value is not used for printf and fprintf. For example, use
(void)fprintf(...);
• The functions printf, fprintf, fputs, and fputc are 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 +Wmacro option 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
This option limits the number of instantiation contexts output by the compiler for diagnostics involving
template instantiations. At most num outermost contexts and num innermost contexts are shown. If
there are more than 2 * num relevant contexts, the additional contexts are omitted. Omitted contexts
are replaced by a single line separating the outermost num contexts from the innermost num contexts,
New features in version A.06.15 31