Purpose
Controls the syntax and semantics of
the #pragma pack directive.
Syntax

.-ibm-.
>>- -q--pack_semantic--=--+-gnu-+------------------------------><
Defaults
-qpack_semantic=ibm
Parameters
- gnu
- Uses the GCC syntax and semantics for #pragma pack. The
effects of this suboption are:
- The current packing value is independent from the packing stack.
- Values are only placed on the pack stack with the push parameter.
Only values that have been specified with the push parameter
can be removed from the stack by the pop parameter.
- If a #pragma pack directive is specified inside a nested
aggregate, it affects the outer, containing aggregate as well.
- ibm
- Uses the IBM syntax and semantics for #pragma
pack. The effects of this suboption are:
- The current packing value is automatically placed at the top of
the packing stack.
- There is no push parameter. Any value can be removed from
the stack by the pop parameter.
- If a #pragma pack directive is specified inside a nested
aggregate, it only affects aggregates that follow it; that is, it
can only affected the inner aggregates.
See #pragma pack for
full details on the syntax and semantics, as well as examples, of
these suboptions.
Usage
You should not need to use this option
unless you are porting applications compiled with GCC and need to
preserve source-level compatibility with the GCC version of the pragma
directive.