bool jsil_typecheck( symbol_tablet &symbol_table, message_handlert &message_handler) { jsil_typecheckt jsil_typecheck(symbol_table, message_handler); return jsil_typecheck.typecheck_main(); }
bool jsil_typecheck( exprt &expr, message_handlert &message_handler, const namespacet &ns) { symbol_tablet symbol_table; jsil_typecheckt jsil_typecheck( symbol_table, message_handler); try { jsil_typecheck.typecheck_expr(expr); } catch(int e) { jsil_typecheck.error(); } catch(const char *e) { jsil_typecheck.error() << e << messaget::eom; } catch(const std::string &e) { jsil_typecheck.error() << e << messaget::eom; } return jsil_typecheck.get_error_found(); }
/// Converting from parse tree and type checking. bool jsil_languaget::typecheck( symbol_tablet &symbol_table, const std::string &module) { if(jsil_typecheck(symbol_table, get_message_handler())) return true; return false; }