类型检查及中间代码生成