diff --git a/src/compiler/OPV.Mod b/src/compiler/OPV.Mod index 3c561714..ddb84751 100644 --- a/src/compiler/OPV.Mod +++ b/src/compiler/OPV.Mod @@ -241,7 +241,8 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 ELSE IF (n.typ.size # to) & ((n.typ.size > OPM.CIntSize) OR (to # OPM.CIntSize)) THEN OPM.WriteString("(INT"); OPM.WriteInt(to*8); OPM.WriteString(")") - END + END; + OPM.Write(OpenParen); Entier(n, MinPrec); OPM.Write(CloseParen) END END SizeCast; @@ -250,13 +251,13 @@ MODULE OPV; (* J. Templ 16.2.95 / 3.7.96 BEGIN from := n^.typ^.form; to := newtype.form; IF to = OPT.Set THEN IF from = OPT.Set THEN (* Sets of different size *) - SizeCast(n, newtype.size); Entier(n, 9) + SizeCast(n, newtype.size); ELSE (* Set from integer *) OPM.WriteString("__SETOF("); Entier(n, MinPrec); OPM.WriteString(","); OPM.WriteInt(newtype.size*8); OPM.Write(CloseParen) END ELSIF to = OPT.Int THEN (* integers of different size *) - SizeCast(n, newtype.size); Entier(n, 9) + SizeCast(n, newtype.size); ELSIF to = OPT.Char THEN IF OPM.ranchk IN OPM.Options THEN OPM.WriteString("__CHR"); IF SideEffects(n) THEN OPM.Write("F") END ;