TC-E Code to Write

See The src/ast Directory and The src/escapes Directory.

src/ast/PrettyPrinter.*

Implement --escapes-display support in the PrettyPrinter. Follow strictly the output format, since we parse your output to check it. Display the /* escaping */ flag where needed, and only where needed: each definition of an escaping variable/formal is preceded by the comment /* escaping */. Do not display meaningless flags due to implementation details. How this pretty-printing is implemented is left to you, but factor common code.

src/escapes/escapes-visitor.*

Write the class escapes::EscapesVisitor in src/escapes/escapes-visitor.hh and src/escapes/escapes-visitor.cc.

src/ast/escapable.*

Ensure ast::VarDec inherits from ast::Escapable. See Escapable.