modify function type. and add some error-detector in symtab