Eliminate a situation where useless continuation entries were being
authorChris Hanson <org/chris-hanson/cph>
Wed, 12 Jun 1991 03:36:15 +0000 (03:36 +0000)
committerChris Hanson <org/chris-hanson/cph>
Wed, 12 Jun 1991 03:36:15 +0000 (03:36 +0000)
generated.  The generation of these entries causes errors later on in
the compilation.  This bug only occurs when type checking is turned
on.

v7/src/compiler/rtlgen/opncod.scm

index 558c39966f548ff35337ea7aa630de22de2bb132..142e72ea4ae5dcd9ddf7c86bc7714ce6251e0c68 100644 (file)
@@ -1,6 +1,6 @@
 #| -*-Scheme-*-
 
-$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/opncod.scm,v 4.40 1991/05/06 23:16:43 jinx Exp $
+$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/compiler/rtlgen/opncod.scm,v 4.41 1991/06/12 03:36:15 cph Exp $
 
 Copyright (c) 1988-1991 Massachusetts Institute of Technology
 
@@ -281,7 +281,11 @@ MIT in each case. |#
 
 (define (open-code:with-checks combination checks non-error-cfg error-finish
                               primitive-name expressions)
-  (let ((checks (list-transform-negative checks cfg-null?)))
+  (let ((checks
+        (list-transform-negative checks
+          (lambda (cfg)
+            (or (cfg-null? cfg)
+                (pcfg-true? cfg))))))
     (if (null? checks)
        non-error-cfg
        ;; Don't generate `error-cfg' unless it is needed.  Otherwise