* [PATCH RFC 10/13] symbol: flag builtins constant_p, safe_p and warning as constexprs
@ 2015-07-22 23:22 Nicolai Stange
0 siblings, 0 replies; only message in thread
From: Nicolai Stange @ 2015-07-22 23:22 UTC (permalink / raw)
To: linux-sparse
Unconditionally flag the expressions
__builtin_constant_p(),
__builtin_safe_p(),
__builtin_warning()
as being integer constant expressions.
Signed-off-by: Nicolai Stange <nicstange@gmail.com>
---
symbol.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
diff --git a/symbol.c b/symbol.c
index 0ceff62..cbc846b 100644
--- a/symbol.c
+++ b/symbol.c
@@ -642,9 +642,10 @@ struct symbol *create_symbol(int stream, const char *name, int type, int namespa
return sym;
}
-static int evaluate_to_integer(struct expression *expr)
+static int evaluate_to_int_const_expr(struct expression *expr)
{
expr->ctype = &int_ctype;
+ expr->flags |= expr_set_flag_mask(EXPR_FLAG_INT_CONST_EXPR);
return 1;
}
@@ -749,17 +750,17 @@ out:
}
static struct symbol_op constant_p_op = {
- .evaluate = evaluate_to_integer,
+ .evaluate = evaluate_to_int_const_expr,
.expand = expand_constant_p
};
static struct symbol_op safe_p_op = {
- .evaluate = evaluate_to_integer,
+ .evaluate = evaluate_to_int_const_expr,
.expand = expand_safe_p
};
static struct symbol_op warning_op = {
- .evaluate = evaluate_to_integer,
+ .evaluate = evaluate_to_int_const_expr,
.expand = expand_warning
};
--
2.4.5
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2015-07-22 23:22 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-22 23:22 [PATCH RFC 10/13] symbol: flag builtins constant_p, safe_p and warning as constexprs Nicolai Stange
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.