INTERFACE: #include #include "symbol_table.h" #include "type_rep.h" class Typedef_symbol : public Symbol { Type type; public: Type get_type() const { return type; } }; IMPLEMENTATION: PUBLIC Typedef_symbol::Typedef_symbol(Type type) : Symbol(), type(type) { set_status(st_Defined); // typedefs can't be referenced or declared } PUBLIC Symbol::Kind Typedef_symbol::get_kind() const { return k_Typedef; } PUBLIC void Typedef_symbol::dump(std::ostream& os) { Symbol::dump(os); os << ", alias to `" << type.get_human_readable_type() << "'"; }