patches/glibc/2.3.3/glibc-2.3.3-allow-gcc-4.0-iconvdata-2.patch
changeset 301 2be7232a73ac
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/patches/glibc/2.3.3/glibc-2.3.3-allow-gcc-4.0-iconvdata-2.patch	Sat Jul 28 21:34:41 2007 +0000
     1.3 @@ -0,0 +1,124 @@
     1.4 +To: Glibc hackers <libc-hacker at sources dot redhat dot com>
     1.5 +Subject: iconvdata: Get rid of lvalue casts
     1.6 +From: Andreas Jaeger <aj at suse dot de>
     1.7 +Date: Sun, 07 Mar 2004 08:29:47 +0100
     1.8 +Message-ID: <m3fzclt8r8.fsf@gromit.moeb>
     1.9 +
    1.10 +Here's one more patch to get rid of lvalues to make GCC 3.5 happy.  It
    1.11 +generates the same code as before on my machine and passes the
    1.12 +testsuite.
    1.13 +
    1.14 +Ok to commit?
    1.15 +
    1.16 +Andreas
    1.17 +
    1.18 +2004-03-07  Andreas Jaeger  <aj@suse.de>
    1.19 +
    1.20 +	* iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
    1.21 +	* iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
    1.22 +	* iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
    1.23 +	* iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
    1.24 +	* iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
    1.25 +
    1.26 +[rediffed to make crosstool happy]
    1.27 +
    1.28 +diff -ur glibc-2.3.3.orig/iconvdata/euc-jisx0213.c glibc-2.3.3.new/iconvdata/euc-jisx0213.c
    1.29 +--- glibc-2.3.3.orig/iconvdata/euc-jisx0213.c	Mon Dec  2 14:07:54 2002
    1.30 ++++ glibc-2.3.3.new/iconvdata/euc-jisx0213.c	Fri Mar 18 09:29:22 2005
    1.31 +@@ -1,5 +1,5 @@
    1.32 + /* Conversion from and to EUC-JISX0213.
    1.33 +-   Copyright (C) 2002 Free Software Foundation, Inc.
    1.34 ++   Copyright (C) 2002, 2004 Free Software Foundation, Inc.
    1.35 +    This file is part of the GNU C Library.
    1.36 +    Contributed by Bruno Haible <bruno@clisp.org>, 2002.
    1.37 + 
    1.38 +@@ -83,7 +83,8 @@
    1.39 + 	  if (__builtin_expect (outbuf + 4 <= outend, 1))		      \
    1.40 + 	    {								      \
    1.41 + 	      /* Write out the last character.  */			      \
    1.42 +-	      *((uint32_t *) outbuf)++ = data->__statep->__count >> 3;	      \
    1.43 ++	      *((uint32_t *) outbuf) = data->__statep->__count >> 3;	      \
    1.44 ++	      outbuf += sizeof (uint32_t);				      \
    1.45 + 	      data->__statep->__count = 0;				      \
    1.46 + 	    }								      \
    1.47 + 	  else								      \
    1.48 +diff -ur glibc-2.3.3.orig/iconvdata/iso-2022-cn-ext.c glibc-2.3.3.new/iconvdata/iso-2022-cn-ext.c
    1.49 +--- glibc-2.3.3.orig/iconvdata/iso-2022-cn-ext.c	Fri Jun 28 14:13:14 2002
    1.50 ++++ glibc-2.3.3.new/iconvdata/iso-2022-cn-ext.c	Fri Mar 18 09:29:22 2005
    1.51 +@@ -1,5 +1,5 @@
    1.52 + /* Conversion module for ISO-2022-CN-EXT.
    1.53 +-   Copyright (C) 2000-2002 Free Software Foundation, Inc.
    1.54 ++   Copyright (C) 2000-2002, 2004 Free Software Foundation, Inc.
    1.55 +    This file is part of the GNU C Library.
    1.56 +    Contributed by Ulrich Drepper <drepper@cygnus.com>, 2000.
    1.57 + 
    1.58 +@@ -377,7 +377,8 @@
    1.59 + 	  }								      \
    1.60 +       }									      \
    1.61 + 									      \
    1.62 +-    *((uint32_t *) outptr)++ = ch;					      \
    1.63 ++    *((uint32_t *) outptr) = ch;					      \
    1.64 ++    outptr += sizeof (uint32_t);					      \
    1.65 +   }
    1.66 + #define EXTRA_LOOP_DECLS	, int *setp
    1.67 + #define INIT_PARAMS		int set = (*setp >> 3) & CURRENT_MASK; \
    1.68 +diff -ur glibc-2.3.3.orig/iconvdata/shift_jisx0213.c glibc-2.3.3.new/iconvdata/shift_jisx0213.c
    1.69 +--- glibc-2.3.3.orig/iconvdata/shift_jisx0213.c	Mon Dec  2 14:07:56 2002
    1.70 ++++ glibc-2.3.3.new/iconvdata/shift_jisx0213.c	Fri Mar 18 09:29:22 2005
    1.71 +@@ -1,5 +1,5 @@
    1.72 + /* Conversion from and to Shift_JISX0213.
    1.73 +-   Copyright (C) 2002 Free Software Foundation, Inc.
    1.74 ++   Copyright (C) 2002, 2004 Free Software Foundation, Inc.
    1.75 +    This file is part of the GNU C Library.
    1.76 +    Contributed by Bruno Haible <bruno@clisp.org>, 2002.
    1.77 + 
    1.78 +@@ -83,7 +83,8 @@
    1.79 + 	  if (__builtin_expect (outbuf + 4 <= outend, 1))		      \
    1.80 + 	    {								      \
    1.81 + 	      /* Write out the last character.  */			      \
    1.82 +-	      *((uint32_t *) outbuf)++ = data->__statep->__count >> 3;	      \
    1.83 ++	      *((uint32_t *) outbuf) = data->__statep->__count >> 3;	      \
    1.84 ++	      outbuf += sizeof (uint32_t);				      \
    1.85 + 	      data->__statep->__count = 0;				      \
    1.86 + 	    }								      \
    1.87 + 	  else								      \
    1.88 +diff -ur glibc-2.3.3.orig/iconvdata/tcvn5712-1.c glibc-2.3.3.new/iconvdata/tcvn5712-1.c
    1.89 +--- glibc-2.3.3.orig/iconvdata/tcvn5712-1.c	Mon Dec  2 14:07:52 2002
    1.90 ++++ glibc-2.3.3.new/iconvdata/tcvn5712-1.c	Fri Mar 18 09:29:22 2005
    1.91 +@@ -1,5 +1,5 @@
    1.92 + /* Conversion to and from TCVN5712-1.
    1.93 +-   Copyright (C) 2001, 2002 Free Software Foundation, Inc.
    1.94 ++   Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc.
    1.95 +    This file is part of the GNU C Library.
    1.96 +    Contributed by Ulrich Drepper <drepper@redhat.com>, 2001.
    1.97 + 
    1.98 +@@ -68,7 +68,8 @@
    1.99 + 	  if (__builtin_expect (outbuf + 4 <= outend, 1))		      \
   1.100 + 	    {								      \
   1.101 + 	      /* Write out the last character.  */			      \
   1.102 +-	      *((uint32_t *) outbuf)++ = data->__statep->__count >> 3;	      \
   1.103 ++	      *((uint32_t *) outbuf) = data->__statep->__count >> 3;	      \
   1.104 ++	      outbuf += sizeof (uint32_t);				      \
   1.105 + 	      data->__statep->__count = 0;				      \
   1.106 + 	    }								      \
   1.107 + 	  else								      \
   1.108 +diff -ur glibc-2.3.3.orig/iconvdata/tscii.c glibc-2.3.3.new/iconvdata/tscii.c
   1.109 +--- glibc-2.3.3.orig/iconvdata/tscii.c	Mon Sep 23 20:39:45 2002
   1.110 ++++ glibc-2.3.3.new/iconvdata/tscii.c	Fri Mar 18 09:29:22 2005
   1.111 +@@ -1,5 +1,5 @@
   1.112 + /* Conversion from and to TSCII.
   1.113 +-   Copyright (C) 2002 Free Software Foundation, Inc.
   1.114 ++   Copyright (C) 2002, 2004 Free Software Foundation, Inc.
   1.115 +    This file is part of the GNU C Library.
   1.116 +    Contributed by Bruno Haible <bruno@clisp.org>, 2002.
   1.117 + 
   1.118 +@@ -98,7 +98,8 @@
   1.119 + 		  break;						      \
   1.120 + 		}							      \
   1.121 + 	      /* Write out the pending character.  */			      \
   1.122 +-	      *((uint32_t *) outbuf)++ = data->__statep->__count >> 8;	      \
   1.123 ++	      *((uint32_t *) outbuf) = data->__statep->__count >> 8;	      \
   1.124 ++	      outbuf += sizeof (uint32_t);				      \
   1.125 + 	      /* Retrieve the successor state.  */			      \
   1.126 + 	      data->__statep->__count =					      \
   1.127 + 		tscii_next_state[(data->__statep->__count >> 4) & 0x0f];      \