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

The -Aaoption instructs the compiler to use Koenig lookup and strict ANSI for scope rules. This option is equivalent to specifying -Wc,-koenig_lookup,onand -Wc,-ansi_for_scope,on.

The default is on for C++, but off for C. Refer to the -Aeoption for C-mode description. The standard features enabled by -Aaare incompatible with earlier C and C++ features.

-AA

-AA

The -AAoption enables the use of the new 2.0 Standard C++ Library, which includes the new standard conforming (templatized) iostream library. It conforms to the ISO C++ standard.

The –AA option sets -Wc,-koenig_lookup,on and -Wc,-ansi_for_scope,on, and is the default C++ compilation mode.

Usage:

The standard features enabled by -AAare incompatible with the older Rogue Wave Standard C++ Library 1.2.1 and Tools.h++ 7.0.6. All modules must be consistent in using -AA. Mixing modules compiled with -AAwith ones that are not is not supported.

NOTE:

This option is not supported in legacy HP C. This option is ignored with warnings in C-mode.

This option will be removed in a future version of the compiler. Use the equivalent option +std=c++98 to ensure that your builds do not break in future.

-Aarm

-Aarm

NOTE: This option was deprecated earlier and is obsolete in this release.

82 Command-Line Options