fixed a bug: constant sets were not handled right on 4-byte machines
authorceriel <none@none>
Wed, 22 Jul 1987 09:21:00 +0000 (09:21 +0000)
committerceriel <none@none>
Wed, 22 Jul 1987 09:21:00 +0000 (09:21 +0000)
lang/pc/pem/Makefile
lang/pc/pem/pem.p

index c0b088f..768a085 100644 (file)
@@ -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)
index d76cc8d..af5ff84 100644 (file)
@@ -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;