From: ceriel Date: Thu, 13 Jun 1991 15:56:14 +0000 (+0000) Subject: FIxed problem with volatile structs and the ./-> operators X-Git-Tag: release-5-5~1107 X-Git-Url: https://git.ndcode.org/public/gitweb.cgi?a=commitdiff_plain;h=3a074a6f99a394b2a22f7b2879b30894753a4ef0;p=ack.git FIxed problem with volatile structs and the ./-> operators --- diff --git a/lang/cem/cemcom.ansi/ch3.c b/lang/cem/cemcom.ansi/ch3.c index b6fed17fb..39df50c25 100644 --- a/lang/cem/cemcom.ansi/ch3.c +++ b/lang/cem/cemcom.ansi/ch3.c @@ -147,9 +147,11 @@ ch3sel(expp, oper, idf) exp->ex_lvalue = (sd->sd_type->tp_fund != ARRAY); exp->ex_flags &= ~EX_ILVALUE; } - if (sd->sd_type->tp_typequal & TQ_CONST) + if ((sd->sd_type->tp_typequal & TQ_CONST) + || (tp->tp_typequal & TQ_CONST)) exp->ex_flags |= EX_READONLY; - if (sd->sd_type->tp_typequal & TQ_VOLATILE) + if ((sd->sd_type->tp_typequal & TQ_VOLATILE) + || (tp->tp_typequal & TQ_VOLATILE)) exp->ex_flags |= EX_VOLATILE; if (oper == '.' && exp->ex_flags & EX_READONLY) { exp->ex_type = qualifier_type(exp->ex_type, TQ_CONST);