Merge commit '40a723a92236fe4e58feb89057b4182b1fc76810'
authorAndy Wingo <wingo@pobox.com>
Fri, 7 Feb 2014 14:26:18 +0000 (15:26 +0100)
committerAndy Wingo <wingo@pobox.com>
Fri, 7 Feb 2014 14:26:18 +0000 (15:26 +0100)
doc/ref/guile-invoke.texi
doc/ref/r6rs.texi
module/system/repl/server.scm

index 2929286..d233ce6 100644 (file)
@@ -410,14 +410,6 @@ Guile uses the environment variable @env{HOME}, the name of your home
 directory, to locate various files, such as @file{.guile} or
 @file{.guile_history}.
 
-@item LTDL_LIBRARY_PATH
-@vindex LTDL_LIBRARY_PATH
-Guile now adds its install prefix to the @env{LTDL_LIBRARY_PATH}.
-
-Users may now install Guile in non-standard directories and run
-`/path/to/bin/guile', without having also to set @env{LTDL_LIBRARY_PATH}
-to include `/path/to/lib'.
-
 @end table
 
 @c Local Variables: 
index 9c5984b..e5ffb78 100644 (file)
@@ -1,7 +1,7 @@
 @c -*-texinfo-*-
 @c This is part of the GNU Guile Reference Manual.
-@c Copyright (C)  2010, 2011, 2012, 2013
-@c   Free Software Foundation, Inc.
+@c Copyright (C)  2010, 2011, 2012, 2013,
+@c   2014 Free Software Foundation, Inc.
 @c See the file guile.texi for copying conditions.
 
 @node R6RS Support
@@ -100,6 +100,10 @@ ongoing to fix this.
 Guile does not prevent use of textual I/O procedures on binary ports.
 More generally, it does not make a sharp distinction between binary and
 textual ports (@pxref{R6RS Port Manipulation, binary-port?}).
+
+@item
+Guile's implementation of @code{equal?} may fail to terminate when
+applied to arguments containing cycles.
 @end itemize
 
 @node R6RS Standard Libraries
index 2df7564..4f3391c 100644 (file)
@@ -1,6 +1,6 @@
 ;;; Repl server
 
-;; Copyright (C)  2003, 2010, 2011 Free Software Foundation, Inc.
+;; Copyright (C)  2003, 2010, 2011, 2014 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
          ((port-closed? server-socket)
           ;; Shutting down.
           #f)
-         ((eq? k 'interrupt)
-          ;; Interrupt.
-          (close-socket! server-socket)
-          #f)
          (else
           (warn "Error accepting client" k args)
           ;; Retry after a timeout.
 (define (serve-client client addr)
   (with-continuation-barrier
    (lambda ()
-     (with-input-from-port client
-       (lambda ()
-         (with-output-to-port client
-           (lambda ()
-             (with-error-to-port client
-               (lambda ()
-                 (with-fluids ((*repl-stack* '()))
-                   (start-repl))))))))))
+     (parameterize ((current-input-port client)
+                    (current-output-port client)
+                    (current-error-port client)
+                    (current-warning-port client))
+       (with-fluids ((*repl-stack* '()))
+         (start-repl)))))
   (close-socket! client))