From 69b293d86b0e4c5e899f4b5c549ae44c9854d278 Mon Sep 17 00:00:00 2001 From: ceriel Date: Fri, 29 Apr 1988 09:16:51 +0000 Subject: [PATCH] types of case-labels are base-types --- lang/m2/comp/declar.g | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lang/m2/comp/declar.g b/lang/m2/comp/declar.g index f19168abc..f4888ad61 100644 --- a/lang/m2/comp/declar.g +++ b/lang/m2/comp/declar.g @@ -407,6 +407,7 @@ CaseLabels(t_type **ptp; register t_node **pnd;) if (*ptp != 0 && ChkCompat(pnd, *ptp, "case label")) { } nd = *pnd; + nd->nd_type = BaseType(nd->nd_type); /* ??? */ if (! (nd->nd_type->tp_fund & T_DISCRETE) || nd->nd_type->tp_size > word_size) { node_error(nd, "illegal type in case label"); @@ -423,7 +424,7 @@ CaseLabels(t_type **ptp; register t_node **pnd;) } else if (! chk_bounds(nd->nd_left->nd_INT, nd->nd_right->nd_INT, - BaseType(nd->nd_type)->tp_fund)) { + nd->nd_type->tp_fund)) { node_error(nd, "lower bound exceeds upper bound in case label range"); } -- 2.34.1