void ansi_c_convert_typet::read_rec(const typet &type) { if(type.id() == "merged_type") { forall_subtypes(it, type) read_rec(*it); } else if(type.id() == "signed") signed_cnt++; else if(type.id() == "unsigned") unsigned_cnt++; else if(type.id() == "volatile") c_qualifiers.is_volatile = true; else if(type.id() == "const") c_qualifiers.is_constant = true; else if(type.id() == "restricted") c_qualifiers.is_restricted = true; else if(type.id() == "char") char_cnt++; else if(type.id() == "int") int_cnt++; else if(type.id() == "int8") int8_cnt++; else if(type.id() == "int16") int16_cnt++; else if(type.id() == "int32") int32_cnt++; else if(type.id() == "int64") int64_cnt++; else if(type.id() == "ptr32") ptr32_cnt++; else if(type.id() == "ptr64") ptr64_cnt++; else if(type.id() == "short") short_cnt++; else if(type.id() == "long") long_cnt++; else if(type.id() == "double") double_cnt++; else if(type.id() == "float") float_cnt++; else if(type.is_bool()) bool_cnt++; else if(type.id() == "static") c_storage_spec.is_static = true; else if(type.id() == "inline") c_storage_spec.is_inline = true; else if(type.id() == "extern") c_storage_spec.is_extern = true; else if(type.id() == "typedef") c_storage_spec.is_typedef = true; else if(type.id() == "register") c_storage_spec.is_register = true; else if(type.id() == "auto") { // ignore } else if(type == get_nil_irep()) { // ignore } else other.push_back(type); }