diff --git a/clim/defprotocol.lisp b/clim/defprotocol.lisp
index 3641d555e35f790935042d285ebbaa0a4ac9592d..aadf41a359eb5baeca4ff643b9e040e7ffcd23df 100644
--- a/clim/defprotocol.lisp
+++ b/clim/defprotocol.lisp
@@ -1,6 +1,6 @@
 ;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Package: CLIM-INTERNALS; Base: 10; Lowercase: Yes -*-
 
-;; $fiHeader: defprotocol.lisp,v 1.4 92/02/24 13:07:21 cer Exp $
+;; $fiHeader: defprotocol.lisp,v 1.5 92/07/01 15:46:16 cer Exp $
 
 (in-package :clim-internals)
 
@@ -64,6 +64,8 @@
 ;; place, so we never need to nest them (yet).
 (defvar *original-stream* nil)
 
+;; If you change this to maintain a more complex mapping than a simple
+;; binding of *ORIGINAL-STREAM*, change ENCAPSULATED-STREAM too.
 (defmacro generate-stream-protocol-trampolines ()
   `(progn
      ,@(writing-clauses
diff --git a/clim/temp-strings.lisp b/clim/temp-strings.lisp
index 87b00fe578227db6d77465c148dfa0b85e7c336c..aa88928f6b4ec7b0fc642ce3c59845cf91aafcc7 100644
--- a/clim/temp-strings.lisp
+++ b/clim/temp-strings.lisp
@@ -1,6 +1,6 @@
 ;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Package: CLIM-INTERNALS; Base: 10; Lowercase: Yes -*-
 
-;; $fiHeader: temp-strings.lisp,v 1.5 92/03/10 10:12:54 cer Exp $
+;; $fiHeader: temp-strings.lisp,v 1.6 92/08/18 17:25:42 cer Exp $
 
 (in-package :clim-internals)
 
@@ -15,7 +15,7 @@
 (defresource temporary-string
 	     (&key (length 100) (adjustable t))
   :constructor (make-array length
-			   :element-type 'character
+			   :element-type #+ANSI-90 'character #-ANSI-90 'string-char
 			   :fill-pointer 0
 			   :adjustable adjustable)
   :matcher (and (eq adjustable (adjustable-array-p temporary-string))
@@ -37,7 +37,7 @@
 (defmacro evacuate-temporary-string (string-var)
   `(if (temporary-string-p ,string-var)
        (make-array (length ,string-var)
-		   :element-type 'character
+		   :element-type #+ANSI-90 'character #-ANSI-90 'string-char
 		   :fill-pointer (length ,string-var)
 		   :initial-contents ,string-var)
        ,string-var))