summaryrefslogtreecommitdiff
path: root/module/language/tree-il/cse.scm
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2013-03-28 05:09:53 -0400
committerMark H Weaver <mhw@netris.org>2013-03-28 05:09:53 -0400
commit26d148066f9cb20e395a7dc4fefdf2e2ef0b2fb0 (patch)
tree40f13bc6355adb822bb8cd01fee5bcd9fd5430f9 /module/language/tree-il/cse.scm
parent8ae26afefee947c71314733c419519fb616bf36d (diff)
parent579127cce488ce208d62e68e679e34fbbdc17367 (diff)
downloadguile-26d148066f9cb20e395a7dc4fefdf2e2ef0b2fb0.tar.gz
Merge remote-tracking branch 'origin/stable-2.0'
Conflicts: configure.ac libguile/deprecated.c libguile/deprecated.h libguile/filesys.h libguile/fluids.c libguile/fports.c libguile/gc.c libguile/guile.c libguile/numbers.c libguile/objcodes.c libguile/r6rs-ports.c libguile/smob.c libguile/socket.c libguile/threads.h module/language/scheme/decompile-tree-il.scm module/language/tree-il/peval.scm test-suite/tests/syncase.test
Diffstat (limited to 'module/language/tree-il/cse.scm')
-rw-r--r--module/language/tree-il/cse.scm8
1 files changed, 5 insertions, 3 deletions
diff --git a/module/language/tree-il/cse.scm b/module/language/tree-il/cse.scm
index f8fd1cd9c..f8df3ce55 100644
--- a/module/language/tree-il/cse.scm
+++ b/module/language/tree-il/cse.scm
@@ -1,6 +1,6 @@
;;; Common Subexpression Elimination (CSE) on Tree-IL
-;; Copyright (C) 2011, 2012 Free Software Foundation, Inc.
+;; Copyright (C) 2011, 2012, 2013 Free Software Foundation, Inc.
;;;; This library is free software; you can redistribute it and/or
;;;; modify it under the terms of the GNU Lesser General Public
@@ -539,8 +539,10 @@
(return (make-call src proc args)
(concat db** db*))))
(($ <lambda> src meta body)
- (let*-values (((body _) (visit body (control-flow-boundary db)
- env 'values)))
+ (let*-values (((body _) (if body
+ (visit body (control-flow-boundary db)
+ env 'values)
+ (values #f #f))))
(return (make-lambda src meta body)
vlist-null)))
(($ <lambda-case> src req opt rest kw inits gensyms body alt)