Lines Matching defs:right
61 && valid_expr_type(expr->right);
193 static struct symbol *bigger_int_type(struct symbol *left, struct symbol *right)
205 right = integer_promotion(right);
207 if (left == right)
211 rmod = right->ctype.modifiers;
213 return (left->rank > right->rank) ? left : right;
216 stype = right;
219 utype = right;
399 info(expr->pos, " %s", show_typename(expr->right->ctype));
465 struct expression *right,
483 if (!restricted_value(right, ltype))
522 struct expression *right,
529 warn_for_different_enum_types(right->pos, left->ctype, right->ctype);
549 ctype = restricted_binop_type(op, left, right,
555 unrestrict(right, rclass, &rtype);
567 struct expression *index = expr->right;
578 if ((expr->left->flags & CEF_ADDR) && (expr->right->flags & CEF_ICE))
613 expr->right = val;
630 mul->right = val;
634 expr->right = index;
819 struct expression *r = expr->right;
858 sub->right = r;
862 div->right = val;
905 if (!evaluate_conditional(expr->right, 0))
910 expr->flags = expr->left->flags & expr->right->flags;
919 int rclass = classify_type(expr->right->ctype, &rtype);
924 expr->flags = expr->left->flags & expr->right->flags;
939 unrestrict(expr->right, rclass, &rtype);
946 const unsigned right_not = expr->right->type == EXPR_PREOP
947 && expr->right->op == '!';
954 ltype = usual_conversions(op, expr->left, expr->right,
960 expr->right = cast_to(expr->right, rtype);
967 unrestrict(expr->right, rclass, &rtype);
975 expr->left = expr->right;
976 expr->right = index;
989 expr->ctype = unqualify_type(degenerate(expr->right));
992 expr->flags &= expr->left->flags & expr->right->flags;
1026 struct expression *left = expr->left, *right = expr->right;
1029 int rclass = classify_type(degenerate(right), &rtype);
1043 if (is_safe_type(left->ctype) || is_safe_type(right->ctype))
1046 expr->flags = left->flags & right->flags & ~CEF_CONST_MASK & ~CEF_ADDR;
1050 ctype = usual_conversions(expr->op, expr->left, expr->right,
1053 expr->right = cast_to(expr->right, ctype);
1066 int is_null2 = is_null_pointer_constant(right);
1070 bad_null(right);
1082 expr->right = cast_to(right, ltype);
1098 expr->right = cast_to(right, ltype);
1299 struct symbol *source = expr->right->ctype;
1314 expr->right = cast_to(expr->right, target);
1320 if (!restricted_value(expr->right, t))
1327 unrestrict(expr->right, sclass, &s);
1329 expr->right = cast_to(expr->right, source);
1333 expr->right = cast_to(expr->right, &uint_ctype);
1343 info(expr->pos, " right side has type %s", show_typename(s));
1344 expr->right = cast_to(expr->right, target);
1349 unrestrict(expr->right, sclass, &s);
1361 target = usual_conversions(op, expr->left, expr->right,
1364 expr->right = cast_to(expr->right, target);
1561 mark_assigned(expr->right);
1601 if (!compatible_assignment_types(expr, ltype, &expr->right, "assignment"))
1733 e2->right = expr->base;
1741 e3->right = alloc_const_expression(expr->pos,
1750 e4->right = e3;
1978 expr->right = alloc_expression(expr->pos, EXPR_FVALUE);
1979 expr->right->ctype = ctype;
1980 expr->right->fvalue = 0;
2046 add->right = alloc_expression(expr->pos, EXPR_VALUE);
2047 add->right->ctype = &int_ctype;
2048 add->right->value = offset;
2157 expr = expr->right;
2261 expr->right = base;
2745 * we know that we *will* handle it right here. Otherwise we would screw
2873 expr->right = cast_to(zero, ctype);
3286 expr->right = m;
3304 expr->right = e;
3404 evaluate_expression(expr->right);
3412 if (!evaluate_expression(expr->right))
3417 evaluate_expression(expr->right);
3423 evaluate_expression(expr->right);