Macros and Functions (GNU Compiler Collection (GCC) Internals)

#### 11.2.1 Trees ¶

All GENERIC trees have two fields in common. First, `TREE_CHAIN` is a pointer that can be used as a singly-linked list to other trees. The other is `TREE_TYPE`. Many trees store the type of an expression or declaration in this field.

These are some other functions for handling trees:

`tree_size` ¶

  Return the number of bytes a tree takes.

`build0` ¶
`build1` ¶
`build2` ¶
`build3` ¶
`build4` ¶
`build5` ¶
`build6` ¶

  These functions build a tree and supply values to put in each parameter. The basic signature is ‘`code, type, [operands]`’. `code` is the `TREE_CODE`, and `type` is a tree representing the `TREE_TYPE`. These are followed by the operands, each of which is also a tree.