Intel® C++ Compiler 16.0 User and Reference Guide

check-pointers-undimensioned, Qcheck-pointers-undimensioned

Determines whether the compiler checks bounds for memory access through arrays that are declared without dimensions.

Architecture Restrictions

Not available on Intel® 64 architecture targeting the Intel® Xeon Phi™ coprocessor x100 product family (formerly code name Knights Corner), on IA-32 architecture targeting Intel® Graphics Technology, or on Intel® 64 architecture targeting Intel® Graphics Technology

Syntax

Linux:

-check-pointers-undimensioned

-no-check-pointers-undimensioned

OS X:

None

Windows:

/Qcheck-pointers-undimensioned

/Qcheck-pointers-undimensioned-

Arguments

None

Default

-check-pointers-undimensioned or /Qcheck-pointers-undimensioned

Bounds checking occurs for memory access through arrays that are declared without dimensions. This checking occurs for both dimensioned and undimensioned arrays.

Description

This option determines whether the compiler checks bounds for memory access through arrays that are declared without dimensions.

To use this option, you must also specify the [Q]check-pointers option.

This pointer checker feature requires installation of another product. For more information, see Feature Requirements.

The default setting, [Q]check-pointers-undimensioned, can cause link time errors for multiple definitions for non-standard code and it can cause linker warnings for undefined symbols when linking library code that has not been compiled with pointer checking enabled. In both of these cases, the symbols will contain the string cp_array_end.

To prevent these issues, disable the checking of undimensioned arrays, by specifying the negative form of the option (see Syntax above).

Note that even if you specify the negative form of the option, dimensioned arrays are always checked.

IDE Equivalent

Visual Studio: Code Generation > Turn off Checking for Undimensioned Arrays

Eclipse: Code Generation > Turn off Checking for Undimensioned Arrays

Xcode: None

Alternate Options

None

See Also