Package: libxklavier
Version: 2.0-0.2
Severity: normal
Tags: patch

When building 'libxklavier' on amd64/unstable with gcc-4.0,
I get the following error:

xklavier_config.c:461: warning: pointer targets in passing argument 2 of 
'__builtin_strcmp' differ in signedness
xklavier_config.c:461: warning: pointer targets in passing argument 2 of 
'__builtin_strcmp' differ in signedness
xklavier_config.c:461: warning: pointer targets in passing argument 1 of 
'strlen' differ in signedness
xklavier_config.c:461: warning: pointer targets in passing argument 2 of 
'__builtin_strcmp' differ in signedness
xklavier_config.c:461: warning: pointer targets in passing argument 2 of 
'__builtin_strcmp' differ in signedness
xklavier_config.c: In function 'XklConfigFindOptionGroup':
xklavier_config.c:519: warning: pointer targets in passing argument 2 of 
'xmlGetProp' differ in signedness
xklavier_config.c:523: warning: pointer targets in passing argument 1 of 
'strlen' differ in signedness
xklavier_config.c:523: warning: pointer targets in passing argument 1 of 
'__builtin_strcmp' differ in signedness
xklavier_config.c:523: warning: pointer targets in passing argument 1 of 
'strlen' differ in signedness
xklavier_config.c:523: warning: pointer targets in passing argument 1 of 
'__builtin_strcmp' differ in signedness
xklavier_config.c:523: warning: pointer targets in passing argument 1 of 
'__builtin_strcmp' differ in signedness
xklavier_config.c:523: warning: pointer targets in passing argument 1 of 
'__builtin_strcmp' differ in signedness
make[3]: *** [xklavier_config.lo] Error 1
make[3]: Leaving directory `/libxklavier-2.0/libxklavier'

With the attached patch 'libxklavier' can be compiled
on amd64 using gcc-4.0.

Regards
Andreas Jochens

diff -urN ../tmp-orig/libxklavier-2.0/libxklavier/xklavier_config.c 
./libxklavier/xklavier_config.c
--- ../tmp-orig/libxklavier-2.0/libxklavier/xklavier_config.c   2004-11-20 
00:42:44.000000000 +0100
+++ ./libxklavier/xklavier_config.c     2005-06-15 15:03:45.000000000 +0200
@@ -29,9 +29,9 @@
 static xmlChar *_XklNodeGetXmlLangAttr( xmlNodePtr nptr )
 {
   if( nptr->properties != NULL &&
-      !strcmp( "lang", nptr->properties[0].name ) &&
+      !strcmp( "lang", (char*)nptr->properties[0].name ) &&
       nptr->properties[0].ns != NULL &&
-      !strcmp( "xml", nptr->properties[0].ns->prefix ) &&
+      !strcmp( "xml", (char*)nptr->properties[0].ns->prefix ) &&
       nptr->properties[0].children != NULL )
     return nptr->properties[0].children->content;
   else
@@ -56,7 +56,7 @@
     switch ( ptr->type )
     {
       case XML_ELEMENT_NODE:
-        if( !strcmp( ptr->name, "configItem" ) )
+        if( !strcmp( (char*)ptr->name, "configItem" ) )
           break;
         return False;
       case XML_TEXT_NODE:
@@ -85,21 +85,21 @@
 
       if( lang != NULL )
       {
-        int priority = _XklGetLanguagePriority( lang );
-        if( !strcmp( nptr->name, "description" ) && ( priority > 
maxDescPriority ) )    /* higher priority */
+        int priority = _XklGetLanguagePriority( (char*)lang );
+        if( !strcmp( (char*)nptr->name, "description" ) && ( priority > 
maxDescPriority ) )    /* higher priority */
         {
           descElement = nptr;
           maxDescPriority = priority;
-        } else if( !strcmp( nptr->name, "shortDescription" ) && ( priority > 
maxShortDescPriority ) )   /* higher priority */
+        } else if( !strcmp( (char*)nptr->name, "shortDescription" ) && ( 
priority > maxShortDescPriority ) )   /* higher priority */
         {
           shortDescElement = nptr;
           maxShortDescPriority = priority;
         }
       } else
       {
-        if( !strcmp( nptr->name, "description" ) )
+        if( !strcmp( (char*)nptr->name, "description" ) )
           ntDescElement = nptr;
-        else if( !strcmp( nptr->name, "shortDescription" ) )
+        else if( !strcmp( (char*)nptr->name, "shortDescription" ) )
           ntShortDescElement = nptr;
       }
     }
@@ -118,12 +118,12 @@
    */ 
 
   if( nameElement != NULL && nameElement->children != NULL )
-    strncat( pci->name, nameElement->children->content,
+    strncat( pci->name, (char*)nameElement->children->content,
              XKL_MAX_CI_NAME_LENGTH - 1 );
 
   if( shortDescElement != NULL && shortDescElement->children != NULL )
   {
-    char * lsd = _XklLocaleFromUtf8( shortDescElement->children->content );
+    char * lsd = _XklLocaleFromUtf8( 
(char*)shortDescElement->children->content );
     strncat( pci->shortDescription,
              lsd,
              XKL_MAX_CI_SHORT_DESC_LENGTH - 1 );
@@ -132,7 +132,7 @@
 
   if( descElement != NULL && descElement->children != NULL )
   {
-    char * ld = _XklLocaleFromUtf8( descElement->children->content );
+    char * ld = _XklLocaleFromUtf8( (char*)descElement->children->content );
     strncat( pci->description,
              ld,
              XKL_MAX_CI_DESC_LENGTH - 1 );
@@ -185,7 +185,7 @@
   if( !_XklConfigRegistryIsInitialized(  ) )
     return;
   snprintf( xpathExpr, sizeof xpathExpr, format, value );
-  xpathObj = xmlXPathEval( xpathExpr, theRegistry.xpathContext );
+  xpathObj = xmlXPathEval( (unsigned char*)xpathExpr, theRegistry.xpathContext 
);
   if( xpathObj != NULL )
   {
     _XklConfigEnumFromNodeSet( xpathObj->nodesetval, func, userData );
@@ -207,7 +207,7 @@
     return False;
 
   snprintf( xpathExpr, sizeof xpathExpr, format, arg1, ptr->name );
-  xpathObj = xmlXPathEval( xpathExpr, theRegistry.xpathContext );
+  xpathObj = xmlXPathEval( (unsigned char*)xpathExpr, theRegistry.xpathContext 
);
   if( xpathObj == NULL )
     return False;
 
@@ -364,10 +364,10 @@
 void XklConfigInit( void )
 {
   xmlXPathInit(  );
-  modelsXPath = xmlXPathCompile( "/xkbConfigRegistry/modelList/model" );
-  layoutsXPath = xmlXPathCompile( "/xkbConfigRegistry/layoutList/layout" );
+  modelsXPath = xmlXPathCompile(  (unsigned 
char*)"/xkbConfigRegistry/modelList/model" );
+  layoutsXPath = xmlXPathCompile(  (unsigned 
char*)"/xkbConfigRegistry/layoutList/layout" );
   optionGroupsXPath =
-    xmlXPathCompile( "/xkbConfigRegistry/optionList/group" );
+    xmlXPathCompile( (unsigned char*)"/xkbConfigRegistry/optionList/group" );
   _XklI18NInit(  );
 
   _XklEnsureVTableInited();
@@ -455,10 +455,10 @@
       {
         Bool allowMC = True;
         xmlChar *allowMCS =
-          xmlGetProp( *theNodePtr, "allowMultipleSelection" );
+          xmlGetProp( *theNodePtr, (unsigned char*)"allowMultipleSelection" );
         if( allowMCS != NULL )
         {
-          allowMC = strcmp( "false", allowMCS );
+          allowMC = strcmp( "false", (char*)allowMCS );
           xmlFree( allowMCS );
         }
 
@@ -516,11 +516,11 @@
 
   if( rv && allowMultipleSelection != NULL )
   {
-    xmlChar *val = xmlGetProp( node, "allowMultipleSelection" );
+    xmlChar *val = xmlGetProp( node, (unsigned char*)"allowMultipleSelection" 
);
     *allowMultipleSelection = False;
     if( val != NULL )
     {
-      *allowMultipleSelection = !strcmp( val, "true" );
+      *allowMultipleSelection = !strcmp( (char*)val, "true" );
       xmlFree( val );
     }
   }
diff -urN ../tmp-orig/libxklavier-2.0/libxklavier/xklavier_private_xmm.h 
./libxklavier/xklavier_private_xmm.h
--- ../tmp-orig/libxklavier-2.0/libxklavier/xklavier_private_xmm.h      
2005-01-07 15:17:33.000000000 +0100
+++ ./libxklavier/xklavier_private_xmm.h        2005-06-15 15:04:32.000000000 
+0200
@@ -35,11 +35,11 @@
 
 extern const char* _XklXmmGetCurrentShortcutOptionName( void );
 
-extern const XmmSwitchOptionPtr _XklXmmGetCurrentShortcut( void );
+extern XmmSwitchOptionPtr _XklXmmGetCurrentShortcut( void );
 
 extern void _XklXmmActualizeGroup( int group );
 
-extern const XmmSwitchOptionPtr _XklXmmFindSwitchOption( unsigned keycode, 
+extern XmmSwitchOptionPtr _XklXmmFindSwitchOption( unsigned keycode, 
                                                          unsigned state,
                                                          int * 
currentShortcut_rv );
 
diff -urN ../tmp-orig/libxklavier-2.0/libxklavier/xklavier_util.c 
./libxklavier/xklavier_util.c
--- ../tmp-orig/libxklavier-2.0/libxklavier/xklavier_util.c     2004-12-09 
00:33:45.000000000 +0100
+++ ./libxklavier/xklavier_util.c       2005-06-15 15:07:02.000000000 +0200
@@ -27,7 +27,7 @@
   if( Success == XGetWindowProperty( _xklDpy, w, _xklAtoms[WM_NAME], 0L,
                                      -1L, False, XA_STRING, &type_ret,
                                      &format_ret, &nitems, &rest, &prop ) )
-    return prop;
+    return (char*)prop;
   else
     return NULL;
 }
@@ -178,7 +178,7 @@
 Window _XklGetRegisteredParent( Window win )
 {
   Window parent = ( Window ) NULL, rw = ( Window ) NULL, *children = NULL;
-  unsigned nchildren = 0;
+  int nchildren = 0;
 
   _xklLastErrorCode =
     _XklStatusQueryTree( _xklDpy, win, &rw, &parent, &children, &nchildren );
@@ -205,7 +205,7 @@
                                 w,
                                 root_return,
                                 parent_return,
-                                children_return, nchildren_return );
+                                children_return, (unsigned*)nchildren_return );
   if( !result )
   {
     XklDebug( 160,
diff -urN ../tmp-orig/libxklavier-2.0/libxklavier/xklavier_xmm.c 
./libxklavier/xklavier_xmm.c
--- ../tmp-orig/libxklavier-2.0/libxklavier/xklavier_xmm.c      2005-01-07 
15:20:23.000000000 +0100
+++ ./libxklavier/xklavier_xmm.c        2005-06-15 15:05:00.000000000 +0200
@@ -63,7 +63,7 @@
   }
 }
 
-const XmmSwitchOptionPtr _XklXmmGetCurrentShortcut()
+XmmSwitchOptionPtr _XklXmmGetCurrentShortcut()
 {
   const char* optionName = _XklXmmGetCurrentShortcutOptionName();
   XklDebug( 150, "Configured switch option: [%s]\n", optionName );
@@ -94,7 +94,7 @@
   return NULL;
 }
 
-const XmmSwitchOptionPtr _XklXmmFindSwitchOption( unsigned keycode, 
+XmmSwitchOptionPtr _XklXmmFindSwitchOption( unsigned keycode, 
                                                   unsigned state, 
                                                   int* currentShortcut_rv )
 {


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to