Go forward to Expanded Reference.
Go backward to Symbol Descriptors.
Go up to Top.

Table of Type Descriptors
*************************

   The type descriptor is the character which follows the type number
and an equals sign.  It specifies what kind of type is being defined.
See String Field, for more information about their use.

`DIGIT'
`('
     Type reference; see See String Field.

`-'
     Reference to builtin type; see See Negative Type Numbers.

`#'
     Method (C++); see See Method Type Descriptor.

`*'
     Pointer; see See Miscellaneous Types.

`&'
     Reference (C++).

`@'
     Type Attributes (AIX); see See String Field.  Member (class
     and variable) type (GNU C++); see See Member Type Descriptor.

`a'
     Array; see See Arrays.

`A'
     Open array; see See Arrays.

`b'
     Pascal space type (AIX); see See Miscellaneous Types.  Builtin
     integer type (Sun); see See Builtin Type Descriptors.  Const
     and volatile qualfied type (OS9000).

`B'
     Volatile-qualified type; see See Miscellaneous Types.

`c'
     Complex builtin type (AIX); see See Builtin Type Descriptors.
     Const-qualified type (OS9000).

`C'
     COBOL Picture type.  See AIX documentation for details.

`d'
     File type; see See Miscellaneous Types.

`D'
     N-dimensional dynamic array; see See Arrays.

`e'
     Enumeration type; see See Enumerations.

`E'
     N-dimensional subarray; see See Arrays.

`f'
     Function type; see See Function Types.

`F'
     Pascal function parameter; see See Function Types

`g'
     Builtin floating point type; see See Builtin Type Descriptors.

`G'
     COBOL Group.  See AIX documentation for details.

`i'
     Imported type (AIX); see See Cross-References.
     Volatile-qualified type (OS9000).

`k'
     Const-qualified type; see See Miscellaneous Types.

`K'
     COBOL File Descriptor.  See AIX documentation for details.

`M'
     Multiple instance type; see See Miscellaneous Types.

`n'
     String type; see See Strings.

`N'
     Stringptr; see See Strings.

`o'
     Opaque type; see See Typedefs.

`p'
     Procedure; see See Function Types.

`P'
     Packed array; see See Arrays.

`r'
     Range type; see See Subranges.

`R'
     Builtin floating type; see See Builtin Type Descriptors (Sun).
     Pascal subroutine parameter; see See Function Types (AIX).
     Detecting this conflict is possible with careful parsing (hint: a
     Pascal subroutine parameter type will always contain a comma, and
     a builtin type descriptor never will).

`s'
     Structure type; see See Structures.

`S'
     Set type; see See Miscellaneous Types.

`u'
     Union; see See Unions.

`v'
     Variant record.  This is a Pascal and Modula-2 feature which is
     like a union within a struct in C.  See AIX documentation for
     details.

`w'
     Wide character; see See Builtin Type Descriptors.

`x'
     Cross-reference; see See Cross-References.

`Y'
     Used by IBM's xlC C++ compiler (for structures, I think).

`z'
     gstring; see See Strings.