Adding start to code generation
Printing errno on log_error()
Checking for null lists in list_concat()
Adding op_new() and push_op()
Starting get_address()

Needs get_identifier() to return yytext if finding an implicit symbol
Refactoring into scope.h
Making get_identifier() public
Refactoring of get_address()

Once implicit symbol table is built, this should work for all kinds of
symbols
Adding implicit symbol table for constants
Adding function call to test data
Updating tasks
Fixing bug with offsets in implicit symbol table
Fixing insertion of symbols as parameters

Assign memory address only on definition.
Fixing indentation in node.h
Adding name field to ops for pseudo opcodes
Logging bug for constants in function calls
Fixing bug with constants being inserted multiple times

Totally spaced that additional scopes are pushed during type checking,
requiring me to specify when a constant is being inserted, such that it
can be put into the constants table in the front of the scopes stack.
Making typeinfo_size() public
Refactoring get_identifier() to return token->text for literals

Which is used as their key in the symbol table and thus should allow
address lookup for implicit symbols in the same way as for explicit
symbols.
Fixing node rule type

Added TOKEN as a valid enum rule member, specifying a terminal node,
which has a token with its category.

This did necessitate a switch back to the macro name T() throughout the
entire lexical analyzer.

While at it, struct address had its union removed as it prevented brace
initialization of addresses.