- To: bug-glibc at gnu dot org
- Subject: fix for bug#2110
- From: letmein <letmein at erols dot com>
- Date: Mon, 9 Apr 2001 10:02:08 -0400
- Delivery-date: Mon, 09 Apr 2001 17:31:46 +0200
- Envelope-to: aj@localhost
- List-Id: Bug reports for the GNU standard C library <bug-glibc.gnu.org>
- Xref: gromit.rhein-neckar.de mail.bug-glibc:3200
Hello
I am sending in a patch to fix bug #2110. This bug definately exists
in glibc2.2.2. This patch must be applied to /usr/include/bits/string2.h
-Alex
--- string2.h.save Wed Jan 24 17:50:06 2001
+++ string2.h Sat Feb 24 18:33:24 2001
@@ -122,54 +122,54 @@
{ \
case 15: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__ (void *)((char *) __u + 4); \
case 11: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 7: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 3: \
__u->__usi = (unsigned short int) __c * 0x0101; \
- __u = __extension__ ((void *) __u + 2); \
+ __u = __extension__(void *) ((char *) __u + 2); \
__u->__uc = (unsigned char) __c; \
break; \
\
case 14: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 10: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 6: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 2: \
__u->__usi = (unsigned short int) __c * 0x0101; \
break; \
\
case 13: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 9: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 5: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 1: \
__u->__uc = (unsigned char) __c; \
break; \
\
case 16: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 12: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 8: \
__u->__ui = __c * 0x01010101; \
- __u = __extension__ ((void *) __u + 4); \
+ __u = __extension__(void *) ((char *) __u + 4); \
case 4: \
__u->__ui = __c * 0x01010101; \
case 0: \
@@ -234,47 +234,47 @@
{
case 1:
__u->__c = __src0_1;
- __u = __extension__ ((void *) __u + 1);
+ __u = __extension__(void *) ((char *) __u + 1);
break;
case 2:
__u->__usi = __src0_2;
- __u = __extension__ ((void *) __u + 2);
+ __u = __extension__(void *) ((char *) __u + 2);
break;
case 3:
__u->__usi = __src0_2;
- __u = __extension__ ((void *) __u + 2);
+ __u = __extension__(void *) ((char *) __u + 2);
__u->__c = __src2_1;
- __u = __extension__ ((void *) __u + 1);
+ __u = __extension__(void *) ((char *) __u + 1);
break;
case 4:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
break;
case 5:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__c = __src4_1;
- __u = __extension__ ((void *) __u + 1);
+ __u = __extension__(void *) ((char *) __u + 1);
break;
case 6:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__usi = __src4_2;
- __u = __extension__ ((void *) __u + 2);
+ __u = __extension__(void *) ((char *) __u + 2);
break;
case 7:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__usi = __src4_2;
- __u = __extension__ ((void *) __u + 2);
+ __u = __extension__(void *) ((char *) __u + 2);
__u->__c = __src6_1;
- __u = __extension__ ((void *) __u + 1);
+ __u = __extension__(void *) ((char *) __u + 1);
break;
case 8:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__ui = __src4_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
break;
}
return (void *) __u;
@@ -359,7 +359,7 @@
__extension__ __u->__sca8 = __src8;
break;
}
- return __extension__ ((void *) __u + __srclen);
+ return __extension__ ((char *) __u + __srclen);
}
# endif
# endif
@@ -415,7 +415,7 @@
break;
case 3:
__u->__usi = __src0_2;
- __u = __extension__ ((void *) __u + 2);
+ __u = __extension__(void *) ((char *) __u + 2);
__u->__uc = '\0';
break;
case 4:
@@ -423,24 +423,24 @@
break;
case 5:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__uc = '\0';
break;
case 6:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__usi = __src4_2;
break;
case 7:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__usi = __src4_2;
- __u = __extension__ ((void *) __u + 2);
+ __u = __extension__(void *) ((char *) __u + 2);
__u->__uc = '\0';
break;
case 8:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__ui = __src4_4;
break;
}
@@ -572,40 +572,40 @@
break;
case 2:
__u->__usi = __src0_2;
- __u = __extension__ ((void *) __u + 1);
+ __u = __extension__(void *) ((char *) __u + 1);
break;
case 3:
__u->__usi = __src0_2;
- __u = __extension__ ((void *) __u + 2);
+ __u = __extension__(void *) ((char *) __u + 2);
__u->__uc = '\0';
break;
case 4:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 3);
+ __u = __extension__(void *) ((char *) __u + 3);
break;
case 5:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__uc = '\0';
break;
case 6:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__usi = __src4_2;
- __u = __extension__ ((void *) __u + 1);
+ __u = __extension__(void *) ((char *) __u + 1);
break;
case 7:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__usi = __src4_2;
- __u = __extension__ ((void *) __u + 2);
+ __u = __extension__(void *) ((char *) __u + 2);
__u->__uc = '\0';
break;
case 8:
__u->__ui = __src0_4;
- __u = __extension__ ((void *) __u + 4);
+ __u = __extension__(void *) ((char *) __u + 4);
__u->__ui = __src4_4;
- __u = __extension__ ((void *) __u + 3);
+ __u = __extension__(void *) ((char *) __u + 3);
break;
}
return &__u->__c;