C/C++ Programmer's Guide (G06.25+)

HP C Implementation-Defined Behavior
HP C/C++ Programmer’s Guide for NonStop Systems429301-008
A-20
G.3.11 Declarators
G.3.11 Declarators
There is no practical limit to the maximum number of declarators that may modify an
arithmetic, structure, or union type.
G.3.12 Statements
The maximum number of case values in a switch statement is MAX_INT.
G.3.13 Preprocessing Directives
The value of a single-character character constant in a constant expression that
controls conditional inclusion does match the value of the same character constant in
the execution character set. Such a character constant can have a negative value.
The method used for locating includable source files is:
In the Guardian environment, for #include “filename” the current subvolume
is searched or the subvolume search list specified by pragma ssv0 through ssv9
is searched, ssv0 first and ssv9 last.
For #include "subvol.filename" the current volume is searched or the
volume search list specified by pragma ssv0 through ssv9 is searched, ssv0
first and ssv9 last.
In the Guardian environment for #include "filename", if the include file does
not have an absolute pathname, they will be searched first in the directory of the
file with #include line, then in the directory named in -I option of c89 utility and
last in /usr/include.
In the Guardian environment, for #include <filename>, the file is searched for
in the compiler subvolume unless the search subvolumes (SSVs) are specified. If
SSVs are specified, the SSVs are searched first and then the compiler subvolume.
In the OSS environment on G-series systems, for #include <filename>, if the
file does not have an absolute pathname, it is searched for first in the directory
named in the -I option of the c89 utility and then in the /usr/include directory.
Quoted names are supported for includable source files.
The mapping between delimited character sequences and an external source file name
is:
In the Guardian environment, it is a one-to-one mapping; except that when a file
ends in ".h", the "." is removed.
In the OSS environment on G-series systems, it is a one-to-one mapping.
For a description of the behavior of each recognized #pragma directive, see
Section 13, Compiler Pragmas.
The date and time of translation are always available.