C/C++ Programmer's Guide (G06.27+, H06.08+, J06.03+)

extern int errno;
#pragma extern_data no_gp errno
FIELDALIGN
The FIELDALIGN pragma controls the component layout of structures for compatibility between
TNS and native structure layout and for compatibility with native mixed-language structure layout.
FIELDALIGN align-attribute [ tag-list ]
align-attribute:
{ AUTO | CSHARED2 | SHARED2 | SHARED8 | PLATFORM }
tag-list:
tag-name [ tag-list ]
align-attribute
specifies the alignment rules for the compiler to follow. Valid values are:
AUTO
directs the compiler to choose the layout scheme. The compiler might add implicit
(anonymous) fillers to ensure that components are properly aligned. This is the default
alignment. The TNS C compiler and the native C and C++ compilers have different AUTO
alignment rules.
CSHARED2
directs the TNS C, native C, and native C++ compilers to lay out components using the
TNS C compiler AUTO alignment rules. Substructures and derived classes with AUTO
alignment and pointers with platform-dependent sizes are not allowed when CSHARED2
is specified.
SHARED2
directs the TNS C, native C, and native C++ compilers to lay out components using the
default TAL compiler SHARED2 alignment rules.
SHARED8
directs the TNS C, native C, and native C++ compilers to lay out components using the
pTAL compiler SHARED8 alignment rules.
PLATFORM
directs the TNS C compiler to lay out components using the SHARED2 alignment rules, and
directs the native C and C++ compilers to lay out components using the AUTO alignment
rules.
tag-name
specifies the name of a structure to which the given alignment rules apply. If no tag is specified,
the FIELDALIGN pragma applies the structure allocation scheme to all structures in the
compilation unit.
The pragma default settings are:
SYSTYPE OSSSYSTYPE GUARDIAN
FIELDALIGN AUTOFIELDALIGN AUTOTNS C compiler
FIELDALIGN AUTOFIELDALIGN AUTOG-series TNS c89 utility
FIELDALIGN AUTOFIELDALIGN AUTOTNS/R native C and C++ compilers
FIELDALIGN 191