HP aC++/HP C A.06.20 Programmer's Guide

Note that the +check=all option does not imply +check=truncate. To enable
+check=truncate, you must explicitly specify it.
+check=truncate:explicit
This option turns on runtime checks for truncation on explicit user casts of integral
values, such as (char)int_val.
+check=truncate:implicit
This option turns on runtime checks for truncation on compiler-generated implicit type
conversions, such as ch = int_val;.
+check=truncate
This option turns on runtime checks for both explicit cast and implicit conversion
truncation.
+check=uninit
The +check=uninit option checks for a use of a stack variable before it is defined. If
such a use is detected, an error message is emitted and the program is aborted. The
check is done by adding an internal flag variable to track the definition and use of user
variables.
If the +check=bounds:pointer is on, +check=uninit will check pointer access
for uninitialized memory read (UMR). To enable checking, the runtime system will
initialize the heap objects and stack variables with a special pattern. If the pointer
accesses an area containing the specified pattern for the specified length, then it assumes
the read is UMR. To minimize UMR false positive, the user may change the special
pattern and number of bytes to check by using RTC_UMR environment variable:
RTC_UMR=[INIT=0xnn][:CHECK_SIZE=sz]
where:
INIT specifies the char type value used to initialize heap/local objects. The default
pattern is 0xDE.
CHECK_SIZE specifies the minimum number of bytes used to check for UMR.
The default number is 2.
Also see the +Oinitcheck option to enable compile-time warnings for variables that
may be used before they are set.
Standards Related Options
The compiler accepts the following options related to the ANSI/ISO 9899-1990 Standard
for the C Programming Language, the ANSI/ISO International Standard, and ISO/IEC 14882
Standard for the C++ Programming Language:
-Aa
-Aa
108 Command-Line Options