Made debugging info handling code be more graceful with badly formed
authorStephen Adams <edu/mit/csail/zurich/adams>
Fri, 5 May 1995 12:57:26 +0000 (12:57 +0000)
committerStephen Adams <edu/mit/csail/zurich/adams>
Fri, 5 May 1995 12:57:26 +0000 (12:57 +0000)
dbg info.

v8/src/compiler/midend/cpsconv.scm

index 81f6391460de5ec055083aa56f19d86c3f7244b3..bec483ae0ecfea4bdc8af6760114e652c6f21208 100644 (file)
@@ -1,8 +1,8 @@
 #| -*-Scheme-*-
 
-$Id: cpsconv.scm,v 1.10 1995/04/28 00:29:13 adams Exp $
+$Id: cpsconv.scm,v 1.11 1995/05/05 12:57:26 adams Exp $
 
-Copyright (c) 1994 Massachusetts Institute of Technology
+Copyright (c) 1994-1995 Massachusetts Institute of Technology
 
 This material was developed by the Scheme project at the Massachusetts
 Institute of Technology, Department of Electrical Engineering and
@@ -456,23 +456,27 @@ MIT in each case. |#
     ((NAMED)
      `(LOOKUP ,(cpsconv/cont/field1 cont)))
     ((VALUE)
-     (let ((value (cpsconv/new-name 'VALUE))
-          (scode
-           (new-dbg-expression/expr
-            (new-dbg-continuation/inner (cpsconv/cont/dbg-cont cont)))))
-       (dbg-info/remember scode `(LOOKUP ,value))
+     (let* ((value    (cpsconv/new-name 'VALUE))
+           (dbg-cont (cpsconv/cont/dbg-cont cont))
+           (scode
+            (and (new-dbg-continuation/inner dbg-cont)
+                 (new-dbg-expression/expr
+                  (new-dbg-continuation/inner dbg-cont)))))
+       (if scode (dbg-info/remember scode `(LOOKUP ,value)))
        (cpsconv/remember*
        `(LAMBDA (,(cpsconv/new-ignored-continuation) ,value)
           (CALL (LOOKUP ,(cpsconv/cont/field1 cont))
                 (QUOTE #F)
                 (LOOKUP ,value)))
-       (cpsconv/cont/dbg-cont cont))))
+       dbg-cont)))
     ((PREDICATE)
-     (let ((value (cpsconv/new-name 'VALUE))
-          (scode
-           (new-dbg-expression/expr
-            (new-dbg-continuation/inner (cpsconv/cont/dbg-cont cont)))))
-       (dbg-info/remember scode `(LOOKUP ,value))
+     (let* ((value    (cpsconv/new-name 'VALUE))
+           (dbg-cont (cpsconv/cont/dbg-cont cont))
+           (scode
+            (and (new-dbg-continuation/inner dbg-cont)
+                 (new-dbg-expression/expr
+                  (new-dbg-continuation/inner dbg-cont)))))
+       (if scode (dbg-info/remember scode `(LOOKUP ,value)))
        (cpsconv/remember*
        `(LAMBDA (,(cpsconv/new-ignored-continuation) ,value)
           (IF (LOOKUP ,value)