From c58e57a927b943cb4a01ad5997b0ef58ccc164b5 Mon Sep 17 00:00:00 2001 From: Stephen Adams Date: Fri, 5 May 1995 12:57:26 +0000 Subject: [PATCH] Made debugging info handling code be more graceful with badly formed dbg info. --- v8/src/compiler/midend/cpsconv.scm | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/v8/src/compiler/midend/cpsconv.scm b/v8/src/compiler/midend/cpsconv.scm index 81f639146..bec483ae0 100644 --- a/v8/src/compiler/midend/cpsconv.scm +++ b/v8/src/compiler/midend/cpsconv.scm @@ -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) -- 2.25.1