expr->left & expr->conditional are unioned but 'left' should only be used for binary operators. Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx> --- expression.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/expression.c b/expression.c index ffb6cb9dc415..5b9bddfe456e 100644 --- a/expression.c +++ b/expression.c @@ -873,7 +873,7 @@ struct token *conditional_expression(struct token *token, struct expression **tr if (*tree && match_op(token, '?')) { struct expression *expr = alloc_expression(token->pos, EXPR_CONDITIONAL); expr->op = token->special; - expr->left = *tree; + expr->conditional = *tree; *tree = expr; token = parse_expression(token->next, &expr->cond_true); token = expect(token, ':', "in conditional expression"); -- 2.26.0