added check_ast and data_type for expression