type_t *get_default_promoted_type(type_t *orig_type) { type_t *result = orig_type; type_t *type = skip_typeref(orig_type); if (is_type_integer(type)) { result = promote_integer(type); } else if (is_type_atomic(type, ATOMIC_TYPE_FLOAT)) { result = type_double; } return result; }
bool is_type_real(const type_t *type) { /* 6.2.5 (17) */ return is_type_integer(type) || is_type_float(type); }