From 03c50928155a25d6b033497bcc6eca9bdf49fe7a Mon Sep 17 00:00:00 2001 From: ceriel Date: Wed, 22 Jul 1987 09:21:00 +0000 Subject: [PATCH] fixed a bug: constant sets were not handled right on 4-byte machines --- lang/pc/pem/Makefile | 2 +- lang/pc/pem/pem.p | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lang/pc/pem/Makefile b/lang/pc/pem/Makefile index c0b088fa4..768a08583 100644 --- a/lang/pc/pem/Makefile +++ b/lang/pc/pem/Makefile @@ -21,7 +21,7 @@ pem.out: pem.m apc -mint --t -o pem.out pem.m pem: pem.m - $(APC) $(LDFLAG) -o pem pem.m + $(APC) $(LDFLAG) -O -o pem pem.m # pem.m is system dependent and may NOT be distributed pem.m: pem.p $(HEAD) diff --git a/lang/pc/pem/pem.p b/lang/pc/pem/pem.p index d76cc8ddc..af5ff848f 100644 --- a/lang/pc/pem/pem.p +++ b/lang/pc/pem/pem.p @@ -2466,7 +2466,7 @@ begin if j = i+1 then argcst(setcode(cstpart[j])) else begin - if j = i+2 then put1(sp_cst2) + if (j = i+2) and ((sz_word <= 2) or not (MB1 in cstpart[j])) then put1(sp_cst2) else begin j:=i+4; put1(sp_cst4) end; for j:=i+1 to j do put1(setcode(cstpart[j])) end; -- 2.34.1