Gyoji Compiler
|
A named label inside a scope. More...
#include <function-scope.hpp>
Public Member Functions | |
~FunctionLabel () | |
Move along, nothing to see here. | |
A named label inside a scope.
A label represents a location in a scope that can be the target of a 'goto' statement. Labels also have associated with them a set of local variables that are currently in scope. The rule for a 'goto' statement is that you can only 'goto' a label that is in the same scope and has the same local variables defined in it. Jumping to other scopes would bring complicated behavior involving dynamically de-allocating and re-allocating variables in the scope that we would rather avoid.
By definition, a label is the start of a basic block and a 'goto' is the end of a basic block almost by definition of basic blocks.
FunctionLabel::~FunctionLabel | ( | ) |
Move along, nothing to see here.
Move along, nothing to see here.