From: ceriel Date: Thu, 18 Jan 1990 10:12:38 +0000 (+0000) Subject: bug fix: casts of constants to a set type caused memory fault X-Git-Tag: release-5-5~1933 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=bcf2aa511cf9f530c8b06001b25efcd8d24c052d;p=ack.git bug fix: casts of constants to a set type caused memory fault --- diff --git a/lang/m2/comp/chk_expr.c b/lang/m2/comp/chk_expr.c index 02c831485..8e7f30c42 100644 --- a/lang/m2/comp/chk_expr.c +++ b/lang/m2/comp/chk_expr.c @@ -1415,6 +1415,13 @@ ChkCast(expp) if (arg->nd_class == Value) { *expp = *arg; free_node(arg); + if (lefttype->tp_fund == T_SET) { + /* User deserves what he gets here ... */ + arith val = expp->nd_INT; + + expp->nd_set = MkSet((unsigned)(lefttype->tp_size)); + expp->nd_set[0] = val; + } } else { expp->nd_symb = CAST;