Commit 990a9693 by Gabriel Dos Reis Committed by Gabriel Dos Reis

* ir.texi: Document type nodes.

From-SVN: r36231
parent a7508e68
2000-09-07 Gabriel Dos Reis <gdr@codesourcery.com>
* ir.texi: Document type nodes.
2000-09-06 Mark Mitchell <mark@codesourcery.com> 2000-09-06 Mark Mitchell <mark@codesourcery.com>
* cp-tree.h (init_cp_semantics): Declare. * cp-tree.h (init_cp_semantics): Declare.
......
...@@ -319,11 +319,16 @@ The elements are indexed from zero. ...@@ -319,11 +319,16 @@ The elements are indexed from zero.
@tindex ARRAY_TYPE @tindex ARRAY_TYPE
@tindex RECORD_TYPE @tindex RECORD_TYPE
@tindex UNION_TYPE @tindex UNION_TYPE
@tindex UNKNOWN_TYPE
@tindex OFFSET_TYPE
@tindex TYPENAME_TYPE
@tindex TYPEOF_TYPE
@findex CP_TYPE_QUALS @findex CP_TYPE_QUALS
@findex TYPE_UNQUALIFIED @findex TYPE_UNQUALIFIED
@findex TYPE_QUAL_CONST @findex TYPE_QUAL_CONST
@findex TYPE_QUAL_VOLATILE @findex TYPE_QUAL_VOLATILE
@findex TYPE_QUAL_RESTRICT @findex TYPE_QUAL_RESTRICT
@findex TYPE_MAIN_VARIANT
@cindex qualified type @cindex qualified type
@findex TYPE_SIZE @findex TYPE_SIZE
@findex TYPE_ALIGN @findex TYPE_ALIGN
...@@ -331,6 +336,12 @@ The elements are indexed from zero. ...@@ -331,6 +336,12 @@ The elements are indexed from zero.
@findex TYPE_ARG_TYPES @findex TYPE_ARG_TYPES
@findex TYPE_METHOD_BASETYPE @findex TYPE_METHOD_BASETYPE
@findex TYPE_PTRMEM_P @findex TYPE_PTRMEM_P
@findex TYPE_OFFSET_BASETYPE
@findex TREE_TYPE
@findex TYPE_CONTEXT
@findex TYPE_NAME
@findex TYPENAME_TYPE_FULLNAME
@findex TYPE_FIELDS
All C++ types have corresponding tree nodes. However, you should not All C++ types have corresponding tree nodes. However, you should not
assume that there is exactly one tree node corresponding to each C++ assume that there is exactly one tree node corresponding to each C++
...@@ -518,6 +529,32 @@ pointed to by the pointer-to-member function. If ...@@ -518,6 +529,32 @@ pointed to by the pointer-to-member function. If
@code{TYPE_PTRMEMFUNC_P} does not hold, this type is a class type. For @code{TYPE_PTRMEMFUNC_P} does not hold, this type is a class type. For
more information, see @pxref{Classes}. more information, see @pxref{Classes}.
@item UNKNOWN_TYPE
This node is used to represent a type the knowledge of which is
unsufficiant for a sound processing.
@item OFFSET_TYPE
This node is used to represent a data member; for example a
pointer-to-data-member is represented by a @code{POINTER_TYPE} whose
@code{TREE_TYPE} is an @code{OFFSET_TYPE}. For a data member @code{X::m}
the @code{TYPE_OFFSET_BASETYPE} is @code{X} and the @code{TREE_TYPE} is
the type of @code{m}.
@item TYPENAME_TYPE
Used to represent a construct of the form @code{typename T::A}. The
@code{TYPE_CONTEXT} is @code{T}; the @code{TYPE_NAME} is an
@code{IDENTIFIER_NODE} for @code{A}. If the type is specified via a
template-id, then @code{TYPENAME_TYPE_FULLNAME} yields a
@code{TEMPLATE_ID_EXPR}. The @code{TREE_TYPE} is non-@code{NULL} if the
node is implicitly generated in support for the implicit typename
extension; in which case the @code{TREE_TYPE} is a type node for the
base-class.
@item TYPEOF_TYPE
Used to represent the @code{__typeof__} extension. The
@code{TYPE_FIELDS} is the expression the type of which is being
represented.
@item UNION_TYPE @item UNION_TYPE
Used to represent @code{union} types. For more information, @pxref{Classes}. Used to represent @code{union} types. For more information, @pxref{Classes}.
@end table @end table
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment