/* * Forward declarations for types used in YYSTYPE. * * * FYI: when a C/C++ program only uses pointers to a type, you do not * need the complete definition of the type, but rather just one of * these forward declarations. By not including the complete * definitions, it reduces dependencies between separately compiled * units: and also is sometimes completely necessary to avoid circular * dependencies. */ class Symbol; class Program; class Class; class Member; class Formal; class Local; class Expr; class Stmt; // typedefs for List ast types #include typedef vector ClassList; typedef vector MemberList; typedef vector FormalList; typedef vector LocalList; typedef vector StmtList; typedef vector ExprList;