Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> --- symbol.h | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/symbol.h b/symbol.h index 9b3f1604e..b0176bc5e 100644 --- a/symbol.h +++ b/symbol.h @@ -372,6 +372,28 @@ static inline int is_bool_type(struct symbol *type) return type == &bool_ctype; } +static inline int is_scalar_type(struct symbol *type) +{ + if (type->type == SYM_NODE) + type = type->ctype.base_type; + switch (type->type) { + case SYM_ENUM: + case SYM_BITFIELD: + case SYM_PTR: + case SYM_ARRAY: // OK, will be a PTR after conversion + case SYM_FN: + case SYM_RESTRICT: // OK, always integer types + return 1; + default: + break; + } + if (type->ctype.base_type == &int_type) + return 1; + if (type->ctype.base_type == &fp_type) + return 1; + return 0; +} + static inline int is_function(struct symbol *type) { return type && type->type == SYM_FN; -- 2.11.0 -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html