lvalue problems with GCC-HEAD

Dan Kegel dank@kegel.com
Mon May 10 17:08:00 GMT 2004


Jan-Benedict Glaw wrote:
> I'm currently investing some time trying to get binutils/gcc/glibc HEAD
> work together. Binutils build fine, as well as the bootstrap compiler.

Good man!  I tried to get gcc-3.4.0 to build glibc head recently,
ran into the problem that it needed -lgcc_eh or something like
that before it was built.  When I get a chance I'll try to submit
a patch... might be a while...

> However, the bootstrap compiler fails to build glibc parts because of
> lvalue casts, like this:
> 
> gconv_simple.c: In function `ucs4_internal_loop':
> gconv_simple.c:268: error: invalid lvalue in increment
> 
> ...which reads like this:
> 
>     266         }
>     267 
>     268       *((uint32_t *) outptr)++ = inval;
>     269     }
>     270 
>     271   *inptrp = inptr;
>     272   *outptrp = outptr;
> 
> Do you know if glibc will be "fixed", or if there's switch for gcc to
> allow these lvalues?

Submit a patch for glibc, it shouldn't be too hard.  That
one might turn into
         *((uint32_t *) outptr) = inval
         outptr = (char *)(((uint32_t *) outptr) + 1);
or something like that.

Run your fix by the libc-alpha@sources.redhat.com people... some of
them are hard to please :-)
- Dan

-- 
My technical stuff: http://kegel.com
My politics: see http://www.misleader.org for examples of why I'm for regime change

------
Want more information?  See the CrossGCC FAQ, http://www.objsw.com/CrossGCC/
Want to unsubscribe? Send a note to crossgcc-unsubscribe@sources.redhat.com



More information about the crossgcc mailing list