diff -Naur rxvt-unicode-9.06-lunar/src/background.C rxvt-unicode-9.06/src/background.C
--- rxvt-unicode-9.06-lunar/src/background.C	2008-11-04 15:43:06.000000000 +0100
+++ rxvt-unicode-9.06/src/background.C	2009-10-25 18:44:44.000000000 +0100
@@ -261,7 +261,7 @@
   unsigned int w = 0, h = 0;
   unsigned int n;
   unsigned long new_flags = (flags & (~geometryFlags));
-  char *p;
+  const char *p;
 #  define MAXLEN_GEOM		256 /* could be longer than regular geometry string */
 
   if (geom == NULL)
@@ -677,7 +677,7 @@
       if (!target->asimman)
         target->asimman = create_generic_imageman (target->rs[Rs_path]);
 
-      if (char *f = strchr (file, ';'))
+      if (char *f = (char *) strchr (file, ';'))
         {
           size_t len = f - file;
           f = (char *)malloc (len + 1);
diff -Naur rxvt-unicode-9.06-lunar/src/command.C rxvt-unicode-9.06/src/command.C
--- rxvt-unicode-9.06-lunar/src/command.C	2008-11-05 17:21:05.000000000 +0100
+++ rxvt-unicode-9.06/src/command.C	2009-10-25 18:45:06.000000000 +0100
@@ -3336,7 +3336,7 @@
           }
         else
           {
-            char *eq = strchr (str, '='); // constness lost, but verified to be ok
+            char *eq = (char *) strchr (str, '='); // constness lost, but verified to be ok
 
             if (eq)
               {
diff -Naur rxvt-unicode-9.06-lunar/src/misc.C rxvt-unicode-9.06/src/misc.C
--- rxvt-unicode-9.06-lunar/src/misc.C	2008-04-26 04:57:18.000000000 +0200
+++ rxvt-unicode-9.06/src/misc.C	2009-10-25 18:45:33.000000000 +0100
@@ -170,7 +170,7 @@
 char *
 rxvt_basename (const char *str) NOTHROW
 {
-  char *base = strrchr (str, '/');
+  char *base = (char *) strrchr (str, '/');
 
   return (char *) (base ? base + 1 : str);
 }
