Always generate symbol tables and check for semantic errors

(if we haven't errored out already)