diff --git a/ChangeLog.n b/ChangeLog.n
index 149628e55c3d3f15eff27ef4a3f4a6111fd9b4df..28a58de9506b011319e8b64acd34cf7ecd96eafa 100644
--- a/ChangeLog.n
+++ b/ChangeLog.n
@@ -1,3 +1,26 @@
+*******************************************************************************
+join from trunk_afuchs3 to trunk
+    changes from:
+	2008-02-13  Andreas Fuchs  <afuchs@franz.com>
+    to
+	2008-01-26  Andreas Fuchs  <afuchs@franz.com>
+
+*******************************************************************************
+2008-02-13  Andreas Fuchs  <afuchs@franz.com>
+
+	* tk/widget.lisp, tk/xm-widgets.lisp, tk-silica/xt-silica.lisp:
+	  remove debug output
+	* tk-silica/image.lisp: Make make-pattern-from-bitmap-file
+	  pass an explicit :format argument; adds support for loading
+	  bitmaps from streams as well as files.
+
+2008-01-26  Andreas Fuchs  <afuchs@franz.com>
+
+	* xlib/pkg.lisp, xlib/xlib-defs.lisp: rename x11:complex to
+	  x11:x11-complex to avoid clobbering the symbol cl:complex.
+	  (see spr34277)
+	* tk-silica/xt-graphics.lisp: use x11:x11-complex.
+
 2007-12-11  Andreas Fuchs  <afuchs@franz.com>
 
 	* clim/text-formatting.lisp: Add filling-stream-conditional-newline,
@@ -6214,4 +6237,4 @@ IGNORE JDI SPECIFIC CHANGES TO Makefile
 	Lots of other stuff
 
 *******************************************************************************
-$Revision: 2.37 $
+$Revision: 2.38 $
diff --git a/tk-silica/image.lisp b/tk-silica/image.lisp
index 4820640bb77105fe84364d0e350b9f6e82d2c87d..7fef288ed536afbdbe7184ed7e64ab2b16466c47 100644
--- a/tk-silica/image.lisp
+++ b/tk-silica/image.lisp
@@ -16,7 +16,7 @@
 ;; Commercial Software developed at private expense as specified in
 ;; DOD FAR Supplement 52.227-7013 (c) (1) (ii), as applicable.
 ;;
-;; $Id: image.lisp,v 2.8 2007/04/17 21:45:53 layer Exp $
+;; $Id: image.lisp,v 2.9 2008/02/13 17:06:46 layer Exp $
 
 (in-package :xm-silica)
 
@@ -43,7 +43,7 @@
 		   type :format)))))
   (multiple-value-bind (array designs)
       (with-keywords-removed (args args '(:designs))
-	(apply #'read-bitmap-file file args))
+	(apply #'read-bitmap-file file :format format args))
     (make-pattern array
 		  (or designs
 		      supplied-designs
diff --git a/tk-silica/xt-graphics.lisp b/tk-silica/xt-graphics.lisp
index 3ff7c5917c33edd1990ad3c73ce8c648a8c2dd29..8061bdf8a77525be288aa23286818d1358488786 100644
--- a/tk-silica/xt-graphics.lisp
+++ b/tk-silica/xt-graphics.lisp
@@ -16,7 +16,7 @@
 ;; Commercial Software developed at private expense as specified in
 ;; DOD FAR Supplement 52.227-7013 (c) (1) (ii), as applicable.
 ;;
-;; $Id: xt-graphics.lisp,v 2.8 2007/12/11 17:20:21 layer Exp $
+;; $Id: xt-graphics.lisp,v 2.9 2008/02/13 17:06:46 layer Exp $
 
 (in-package :tk-silica)
 
@@ -676,7 +676,7 @@
   (with-slots (ink-table) medium
     (let* ((gc (gethash ink ink-table))
 	   (pixmap (or (tk::gcontext-stipple gc)
-		       (tk::gcontext-tile gc))))
+                       (tk::gcontext-tile gc))))
       (when pixmap
 	(tk::destroy-pixmap pixmap)))))
 
@@ -1420,7 +1420,7 @@
 	       ink
 	       points
 	       npoints
-	       x11:complex
+	       x11:x11-complex
 	       x11:coordmodeorigin)
 	    (x11:xdrawlines
 	     (tk::object-display drawable)
diff --git a/tk-silica/xt-silica.lisp b/tk-silica/xt-silica.lisp
index e8c957ec5994912fa6f96a9793e773c88b7fdef4..601c1dbc7d9815877aa330599d5a24ab486a6d75 100644
--- a/tk-silica/xt-silica.lisp
+++ b/tk-silica/xt-silica.lisp
@@ -16,7 +16,7 @@
 ;; Commercial Software developed at private expense as specified in
 ;; DOD FAR Supplement 52.227-7013 (c) (1) (ii), as applicable.
 ;;
-;; $Id: xt-silica.lisp,v 2.12 2007/12/11 17:20:21 layer Exp $
+;; $Id: xt-silica.lisp,v 2.13 2008/02/13 17:06:46 layer Exp $
 
 (in-package :xm-silica)
 
@@ -343,7 +343,6 @@ setup."
             (dolist (family families)
               (pushnew (last (disassemble-x-font-name (second family)) 2) done-registries
                        :test #'equal))))
-        (format *debug-io* "done registries: ~A, last charset: ~A~%" done-registries charset-number)
         ;; Now setup font mappings of fonts that the user has
         ;; installed, but we don't know anything about (especially no
         ;; convenient font aliases).
@@ -357,7 +356,6 @@ setup."
                 for encoding being the hash-keys of (list-fonts-by-registry display) using (hash-value fonts)
                 for fallback-font = (find-font-with-properties fonts weight slant)
                 for default-font-match-string = (format nil "-*-*-*-*-*-*-*-*-*-*-*-*-~A-~A" (first encoding) (second encoding))
-                do (format *debug-io* "~&registering installed font ~A for enc:~A~%" character-set encoding)
                 do (unless (member encoding done-registries :test #'equal)
                      (vector-push-extend (excl:string-to-native
                                           (format nil "~A-~A" (first encoding) (second encoding)))
diff --git a/tk/widget.lisp b/tk/widget.lisp
index 16d77950163ed5daf21ed0bfef5fad38d0f38ee7..e5c31e807f0a7560627a3e45df8e29b0c8a5202e 100644
--- a/tk/widget.lisp
+++ b/tk/widget.lisp
@@ -16,7 +16,7 @@
 ;; Commercial Software developed at private expense as specified in
 ;; DOD FAR Supplement 52.227-7013 (c) (1) (ii), as applicable.
 ;;
-;; $Id: widget.lisp,v 2.10 2007/12/11 17:20:20 layer Exp $
+;; $Id: widget.lisp,v 2.11 2008/02/13 17:06:46 layer Exp $
 
 (in-package :tk)
 
@@ -365,12 +365,10 @@
                 (,(excl:find-external-format "LATIN1") . "ISO-8859-1")))
 
 (defun try-setting-x-locale (locale)
-  (format *debug-io* "Trying locale ~A~%" locale)
   (setlocale lc-all locale)
   (let ((supported (x-supports-locale)))
     (unless (zerop supported)
       (x-set-locale-modifiers "")
-      (format *debug-io* "X supports locale!~%")
       locale)))
 
 (defun set-supported-x-locale ()
diff --git a/tk/xm-widgets.lisp b/tk/xm-widgets.lisp
index c7061ef27278ecc5eeae3c62f93352a653e644f7..3457a1e6ad05d854be84eeb519add7513a185103 100644
--- a/tk/xm-widgets.lisp
+++ b/tk/xm-widgets.lisp
@@ -16,7 +16,7 @@
 ;; Commercial Software developed at private expense as specified in
 ;; DOD FAR Supplement 52.227-7013 (c) (1) (ii), as applicable.
 ;;
-;; $Id: xm-widgets.lisp,v 2.10 2007/12/11 17:20:20 layer Exp $
+;; $Id: xm-widgets.lisp,v 2.11 2008/02/13 17:06:46 layer Exp $
 
 (in-package :tk)
 
@@ -336,8 +336,6 @@
                                              *lookup-string-buffer-size*
                                              &keysym &status)))
         (declare (fixnum nbytes))
-        (format *debug-io* "Done looking up mb string: nc=~A/status=~A/event-t=~A~%"
-                nbytes status (event-type event))
         (force-output *debug-io*)
         (cond
           ((= status x11::XBufferOverflow)
@@ -348,8 +346,6 @@
           ((= status x11::XLookupNone)
            (values nil nil))
           (t
-           (format *debug-io* "buffer=~A~%"
-                   (excl:native-to-octets buffer :length nbytes))
            (let ((keysymp (or (= status x11::XLookupKeyBoth)
                               (= status x11::XLookupKeySym)))
                  (charsp (or (= status x11::XLookupKeyBoth)
diff --git a/xlib/pkg.lisp b/xlib/pkg.lisp
index 70d4b648af4c358bd87da246548937523fbd0ac3..0fbbc67188b351a037b5a714837fb5c9daa0d5de 100644
--- a/xlib/pkg.lisp
+++ b/xlib/pkg.lisp
@@ -16,7 +16,7 @@
 ;; Commercial Software developed at private expense as specified in
 ;; DOD FAR Supplement 52.227-7013 (c) (1) (ii), as applicable.
 ;;
-;; $Id: pkg.lisp,v 2.7 2007/04/17 21:45:54 layer Exp $
+;; $Id: pkg.lisp,v 2.8 2008/02/13 17:06:46 layer Exp $
 
 (defpackage :x11
   ;; I don't know if this is OK (can we assume clim-utils?).  In any
@@ -122,7 +122,8 @@
 	   #:capnotlast #:capprojecting #:capround #:centergravity #:char
 	   #:circulatenotify #:circulaterequest #:clientmessage #:clipbychildren
 	   #:colormap #:colormapchangemask #:colormapinstalled #:colormapnotify
-	   #:colormapuninstalled #:complex #:configurenotify #:configurerequest
+	   #:colormapuninstalled #:x11-complex #:configurenotify
+           #:configurerequest
 	   #:controlmapindex #:controlmask #:convex #:coordmodeorigin
 	   #:coordmodeprevious #:copyfromparent #:createnotify #:currenttime
 	   #:cursor #:cursorshape #:cwbackingpixel #:cwbackingplanes
diff --git a/xlib/xlib-defs.lisp b/xlib/xlib-defs.lisp
index ac563ce5674bea226cc28cda979bbf338b69be7e..271a4a42f66d7e0689281241aba28d9c8f2e3758 100644
--- a/xlib/xlib-defs.lisp
+++ b/xlib/xlib-defs.lisp
@@ -16,7 +16,7 @@
 ;; Commercial Software developed at private expense as specified in
 ;; DOD FAR Supplement 52.227-7013 (c) (1) (ii), as applicable.
 ;;
-;; $Id: xlib-defs.lisp,v 2.10 2007/12/11 17:20:21 layer Exp $
+;; $Id: xlib-defs.lisp,v 2.11 2008/02/13 17:06:46 layer Exp $
 
 ;;; (c) Copyright  1990 Sun Microsystems, Inc.  All Rights Reserved.
 ;;      (c) Copyright 1989, 1990, 1991 Sun Microsystems, Inc. Sun design
@@ -171,7 +171,7 @@
 (def-exported-constant colormapinstalled 1)            ;; #define ColormapInstalled 1
 (def-exported-constant colormapnotify 32)              ;; #define ColormapNotify 	32
 (def-exported-constant colormapuninstalled 0)          ;; #define ColormapUninstalled 0
-(def-exported-constant complex 0)                      ;; #define Complex 		0
+(def-exported-constant x11-complex 0)                  ;; #define Complex 		0 (uses a different name to avoid clashing with cl:complex - spr34277)
 (def-exported-constant configurenotify 22)             ;; #define ConfigureNotify 	22
 (def-exported-constant configurerequest 23)            ;; #define ConfigureRequest 23
 (def-exported-constant controlmapindex 2)              ;; #define ControlMapIndex 	2