Index: lib/diasvgrenderer.c
===================================================================
--- lib/diasvgrenderer.c	(revisjon 4137)
+++ lib/diasvgrenderer.c	(arbeidskopi)
@@ -226,16 +226,16 @@
   g_string_truncate(str, 0);
 
   /* TODO(CHECK): the shape-export didn't have 'fill: none' here */
-  g_string_sprintf(str, "fill: none; fill-opacity:0; stroke-width: %s", dia_svg_dtostr(linewidth_buf, renderer->linewidth) );
+  g_string_printf(str, "fill: none; fill-opacity:0; stroke-width: %s", dia_svg_dtostr(linewidth_buf, renderer->linewidth) );
   if (strcmp(renderer->linecap, "butt"))
-    g_string_sprintfa(str, "; stroke-linecap: %s", renderer->linecap);
+    g_string_append_printf(str, "; stroke-linecap: %s", renderer->linecap);
   if (strcmp(renderer->linejoin, "miter"))
-    g_string_sprintfa(str, "; stroke-linejoin: %s", renderer->linejoin);
+    g_string_append_printf(str, "; stroke-linejoin: %s", renderer->linejoin);
   if (renderer->linestyle)
-    g_string_sprintfa(str, "; stroke-dasharray: %s", renderer->linestyle);
+    g_string_append_printf(str, "; stroke-dasharray: %s", renderer->linestyle);
 
   if (colour)
-    g_string_sprintfa(str, "; stroke: #%02x%02x%02x",
+    g_string_append_printf(str, "; stroke: #%02x%02x%02x",
 		      (int)ceil(255*colour->red), (int)ceil(255*colour->green),
 		      (int)ceil(255*colour->blue));
 
@@ -251,7 +251,7 @@
 
   if (!str) str = g_string_new(NULL);
 
-  g_string_sprintf(str, "fill: #%02x%02x%02x",
+  g_string_printf(str, "fill: #%02x%02x%02x",
 		   (int)ceil(255*colour->red), (int)ceil(255*colour->green),
 		   (int)ceil(255*colour->blue));
 
@@ -299,7 +299,7 @@
 
   str = g_string_new(NULL);
   for (i = 0; i < num_points; i++)
-    g_string_sprintfa(str, "%s,%s ",
+    g_string_append_printf(str, "%s,%s ",
 		      dia_svg_dtostr(px_buf, points[i].x),
 		      dia_svg_dtostr(py_buf, points[i].y) );
   xmlSetProp(node, (const xmlChar *)"points", (xmlChar *) str->str);
@@ -324,7 +324,7 @@
 
   str = g_string_new(NULL);
   for (i = 0; i < num_points; i++)
-    g_string_sprintfa(str, "%s,%s ",
+    g_string_append_printf(str, "%s,%s ",
 		      dia_svg_dtostr(px_buf, points[i].x),
 		      dia_svg_dtostr(py_buf, points[i].y) );
   xmlSetProp(node, (const xmlChar *)"points", (xmlChar *) str->str);
@@ -349,7 +349,7 @@
 
   str = g_string_new(NULL);
   for (i = 0; i < num_points; i++)
-    g_string_sprintfa(str, "%s,%s ",
+    g_string_append_printf(str, "%s,%s ",
 		      dia_svg_dtostr(px_buf, points[i].x),
 		      dia_svg_dtostr(py_buf, points[i].y) );
   xmlSetProp(node, (const xmlChar *)"points", (xmlChar *)str->str);
@@ -554,7 +554,7 @@
   if (points[0].type != BEZ_MOVE_TO)
     g_warning("first BezPoint must be a BEZ_MOVE_TO");
 
-  g_string_sprintf(str, "M %s %s",
+  g_string_printf(str, "M %s %s",
 		   dia_svg_dtostr(p1x_buf, (gdouble) points[0].p1.x),
 		   dia_svg_dtostr(p1y_buf, (gdouble) points[0].p1.y) );
 
@@ -564,12 +564,12 @@
       g_warning("only first BezPoint can be a BEZ_MOVE_TO");
       break;
     case BEZ_LINE_TO:
-      g_string_sprintfa(str, " L %s,%s",
+      g_string_append_printf(str, " L %s,%s",
 			dia_svg_dtostr(p1x_buf, (gdouble) points[i].p1.x),
 			dia_svg_dtostr(p1y_buf, (gdouble) points[i].p1.y) );
       break;
     case BEZ_CURVE_TO:
-      g_string_sprintfa(str, " C %s,%s %s,%s %s,%s",
+      g_string_append_printf(str, " C %s,%s %s,%s %s,%s",
 			dia_svg_dtostr(p1x_buf, (gdouble) points[i].p1.x),
 			dia_svg_dtostr(p1y_buf, (gdouble) points[i].p1.y),
 			dia_svg_dtostr(p2x_buf, (gdouble) points[i].p2.x),
@@ -608,7 +608,7 @@
   if (points[0].type != BEZ_MOVE_TO)
     g_warning("first BezPoint must be a BEZ_MOVE_TO");
 
-  g_string_sprintf(str, "M %s %s",
+  g_string_printf(str, "M %s %s",
 		   dia_svg_dtostr(p1x_buf, (gdouble) points[0].p1.x),
 		   dia_svg_dtostr(p1y_buf, (gdouble) points[0].p1.y) );
  
@@ -618,12 +618,12 @@
       g_warning("only first BezPoint can be a BEZ_MOVE_TO");
       break;
     case BEZ_LINE_TO:
-      g_string_sprintfa(str, " L %s,%s",
+      g_string_append_printf(str, " L %s,%s",
 			dia_svg_dtostr(p1x_buf, (gdouble) points[i].p1.x),
 			dia_svg_dtostr(p1y_buf, (gdouble) points[i].p1.y) );
       break;
     case BEZ_CURVE_TO:
-      g_string_sprintfa(str, " C %s,%s %s,%s %s,%s",
+      g_string_append_printf(str, " C %s,%s %s,%s %s,%s",
 			dia_svg_dtostr(p1x_buf, (gdouble) points[i].p1.x),
 			dia_svg_dtostr(p1y_buf, (gdouble) points[i].p1.y),
 			dia_svg_dtostr(p2x_buf, (gdouble) points[i].p2.x),
Index: lib/prop_basic.c
===================================================================
--- lib/prop_basic.c	(revisjon 4137)
+++ lib/prop_basic.c	(arbeidskopi)
@@ -200,8 +200,8 @@
   prop->name_quark = pdesc->quark;
   if (!prop->name_quark) {
     prop->name_quark = g_quark_from_string(prop->name);
-    g_error(G_GNUC_FUNCTION ": late quark construction for property %s",
-            prop->name);
+    g_error("%s: late quark construction for property %s",
+            G_STRFUNC,prop->name);
   }
   prop->type = pdesc->type;
   prop->type_quark = pdesc->type_quark;
@@ -422,59 +422,59 @@
 unimplementedprop_new(const PropDescription *pdesc, 
                       PropDescToPropPredicate reason) 
 {
-  g_warning(G_GNUC_FUNCTION " for property %s",pdesc->name); 
+  g_warning("%s: for property %s",G_STRFUNC,pdesc->name); 
   return NULL;
 }
 
 void 
 unimplementedprop_free(UnimplementedProperty *prop) 
 {
-  g_warning(G_GNUC_FUNCTION " for property %s",prop->common.descr->name); 
+  g_warning("%s: for property %s",G_STRFUNC,prop->common.descr->name); 
 }
 
 UnimplementedProperty *
 unimplementedprop_copy(UnimplementedProperty *src) 
 {
-  g_warning(G_GNUC_FUNCTION " for property %s",src->common.descr->name); 
+  g_warning("%s: for property %s",G_STRFUNC,src->common.descr->name); 
   return NULL;
 }
 
 WIDGET *
 unimplementedprop_get_widget(UnimplementedProperty *prop, PropDialog *dialog)
 {  
-  g_warning(G_GNUC_FUNCTION " for property %s",prop->common.descr->name); 
+  g_warning("%s: for property %s",G_STRFUNC,prop->common.descr->name); 
   return NULL;
 }
 
 void 
 unimplementedprop_reset_widget(UnimplementedProperty *prop, WIDGET *widget) 
 {
-  g_warning(G_GNUC_FUNCTION " for property %s",prop->common.descr->name); 
+  g_warning("%s: for property %s",G_STRFUNC,prop->common.descr->name); 
 }
 
 void 
 unimplementedprop_set_from_widget(UnimplementedProperty *prop, WIDGET *widget) 
 {
-  g_warning(G_GNUC_FUNCTION " for property %s",prop->common.descr->name); 
+  g_warning("%s: for property %s",G_STRFUNC,prop->common.descr->name); 
 }
 
 void 
 unimplementedprop_load(UnimplementedProperty *prop, 
                        AttributeNode attr, DataNode data) 
 {
- g_warning(G_GNUC_FUNCTION " for property %s",prop->common.descr->name); 
+ g_warning("%s: for property %s",G_STRFUNC,prop->common.descr->name); 
 }
 
 void 
 unimplementedprop_save(UnimplementedProperty *prop, AttributeNode attr) 
 {
-  g_warning(G_GNUC_FUNCTION " for property %s",prop->common.descr->name); 
+  g_warning("%s: for property %s",G_STRFUNC,prop->common.descr->name); 
 }
 
 gboolean 
 unimplementedprop_can_merge(const PropDescription *pd1, const PropDescription *pd2)
 {
-  g_warning(G_GNUC_FUNCTION " for property %s/%s",pd1->name,pd2->name); 
+  g_warning("%s: for property %s/%s",G_STRFUNC,pd1->name,pd2->name); 
   return FALSE;
 }
 
@@ -482,14 +482,14 @@
 unimplementedprop_get_from_offset(const UnimplementedProperty *prop,
                                   void *base, guint offset, guint offset2) 
 {
-  g_warning(G_GNUC_FUNCTION " for property %s",prop->common.descr->name); 
+  g_warning("%s: for property %s",G_STRFUNC,prop->common.descr->name); 
 }
 
 void 
 unimplementedprop_set_from_offset(UnimplementedProperty *prop,
                                   void *base, guint offset, guint offset2)
 {
-  g_warning(G_GNUC_FUNCTION " for property %s",prop->common.descr->name); 
+  g_warning("%s: for property %s",G_STRFUNC,prop->common.descr->name); 
 }
 
 static const PropertyOps unimplementedprop_ops = {
Index: lib/persistence.c
===================================================================
--- lib/persistence.c	(revisjon 4137)
+++ lib/persistence.c	(arbeidskopi)
@@ -861,7 +861,7 @@
   } else {
     gboolean existed = FALSE;
     GList *tmplist = plist->glist;
-    GList *old_elem = g_list_find_custom(tmplist, item, g_strcasecmp);
+    GList *old_elem = g_list_find_custom(tmplist, item, (GCompareFunc)g_ascii_strncasecmp);
     while (old_elem != NULL) {
       tmplist = g_list_remove_link(tmplist, old_elem);
       /* Don't free this, as it makes recent_files go boom after
@@ -870,7 +870,7 @@
        */
       /*g_free(old_elem->data);*/
       g_list_free_1(old_elem);
-      old_elem = g_list_find_custom(tmplist, item, g_strcasecmp);
+      old_elem = g_list_find_custom(tmplist, item, (GCompareFunc)g_ascii_strncasecmp);
       existed = TRUE;
     }
     tmplist = g_list_prepend(tmplist, g_strdup(item));
@@ -898,7 +898,7 @@
 {
   PersistentList *plist = persistent_list_get(role);
   /* Leaking data?  See not in persistent_list_add */
-  GList *entry = g_list_find_custom(plist->glist, item, g_strcasecmp);
+  GList *entry = g_list_find_custom(plist->glist, item, (GCompareFunc)g_ascii_strncasecmp);
   if (entry != NULL) {
     plist->glist = g_list_remove_link(plist->glist, entry);
     g_free(entry->data);
@@ -938,7 +938,7 @@
     listener = g_new(ListenerData, 1);
     listener->func = func;
     listener->watch = watch;
-    g_object_add_weak_pointer(watch, &listener->watch);
+    g_object_add_weak_pointer(watch, (gpointer)&listener->watch);
     listener->userdata = userdata;
     plist->listeners = g_list_append(plist->listeners, listener);
   }
