Using a variable before a value is assigned to it is called a forward reference. tcng uses forward references in the following cases:
More details on these cases can be found in sections 2.9 and 2.10, respectively.
Forward-referenced variables have the scope of the location where they are first referenced. They cannot be read before a value has been assigned to them, but they can be used for further forward references.