For Instance: in xine-lib:


gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -I../../include -I../../include -I../../src -I../../src/xine-engine -I../../src/xine-engine -I../../src/xine-utils -I../../src/input -I../../src/input -I../../lib -I/usr/X11R6/include -mtune=pentiumpro -O3 -pipe -fomit-frame-pointer -falign-functions=4 -falign-loops=4 -falign-jumps=4 -mpreferred-stack-boundary=2 -fexpensive-optimizations -fschedule-insns2 -fno-strict-aliasing -ffast-math -funroll-loops -finline-functions -Wall -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -DXINE_COMPILE -Wnested-externs -Wcast-align -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes -MT color.lo -MD -MP -MF .deps/color.Tpo -c color.c  -fPIC -DPIC -o .libs/color.o
color.c: In function 'vscale_chroma_line':
color.c:498: error: invalid lvalue in increment
color.c:499: error: invalid lvalue in increment
make[3]: *** [color.lo] Error 1
make[3]: Leaving directory `/home/casimiro/Softwares/Multimedia/xine/xine-lib-1.0/src/xine-utils'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/casimiro/Softwares/Multimedia/xine/xine-lib-1.0/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/casimiro/Softwares/Multimedia/xine/xine-lib-1.0'
make: *** [all] Error 2

caused by:

  for (x=0; x < (width / 4); x++) {
    n1  = *(((unsigned int *) src1)++);
    n2  = *(((unsigned int *) src2)++);

    n3  = (n1 & 0xFF00FF00) >> 8;
    n4  = (n2 & 0xFF00FF00) >> 8;
    n1 &= 0x00FF00FF;
    n2 &= 0x00FF00FF;

and that doesn't seem to be ´lazy code´...

Other example: while compiling libquicktime...

gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../../include/quicktime -I../../include -
I../../include/ -DMMX -O3 -funroll-all-loops -fomit-frame-pointer -falign-loops=
2 -falign-jumps=2 -falign-functions=2 -finline-functions -Wall -Winline -march=p
entium -O3 -funroll-all-loops -fomit-frame-pointer -falign-loops=2 -falign-jumps
=2 -falign-functions=2 -finline-functions -Wall -Winline -MT RTjpeg.lo -MD -MP -
MF .deps/RTjpeg.Tpo -c RTjpeg.c  -fPIC -DPIC -o .libs/RTjpeg.o
In file included from RTjpeg.c:40:
RTjpeg.h:99: warning: 'packed' attribute ignored
RTjpeg.c: In function 'RTjpeg_b2s':
RTjpeg.c:101: error: invalid lvalue in assignment
RTjpeg.c: In function 'RTjpeg_compressYUV420':
RTjpeg.c:2503: warning: pointer targets in initialization differ in signedness
RTjpeg.c:2505: warning: pointer targets in initialization differ in signedness
RTjpeg.c:2506: warning: pointer targets in initialization differ in signedness
RTjpeg.c:2518: warning: pointer targets in passing argument 2 of 'RTjpeg_dctY' d
iffer in signedness

while the corresponding code is:

 (uint8_t)strm[0]=(uint8_t)(data[RTjpeg_ZZ[0]]>254) ? 254:((data[RTjpeg_ZZ[0]]<0)?0:data[RTjpeg_ZZ[0]]);

And if I ´translate the code' to:

 /* (uint8_t)strm[0]=(uint8_t)(data[RTjpeg_ZZ[0]]>254) ? 254:((data[RTjpeg_ZZ[0]]<0)?0:data[RTjpeg_ZZ[0]]); */

  if (data[RTjpeg_ZZ[0]] > 254) {
    strm[0]=(uint8_t)254;
  } else {
    if (data[RTjpeg_ZZ[0]]<0) {
      strm[0]=(uint8_t)0;
    } else {
      strm[0]=(uint8_t)data[RTjpeg_ZZ[0]];
    }
  }

What happens is:

tmp/cc6v1FnN.s: Assembler messages:
/tmp/cc6v1FnN.s:1746: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:1752: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:1754: Error: suffix or operands invalid for `movq'
/tmp/cc6v1FnN.s:1756: Error: suffix or operands invalid for `movq'
/tmp/cc6v1FnN.s:1774: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:1780: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:1786: Error: suffix or operands invalid for `punpckhwd'
/tmp/cc6v1FnN.s:1788: Error: suffix or operands invalid for `punpckhwd'
/tmp/cc6v1FnN.s:1796: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:1798: Error: suffix or operands invalid for `punpckhwd'
/tmp/cc6v1FnN.s:1805: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:1809: Error: suffix or operands invalid for `punpckhwd'
/tmp/cc6v1FnN.s:1826: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:1832: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:1834: Error: suffix or operands invalid for `movq'
/tmp/cc6v1FnN.s:1836: Error: suffix or operands invalid for `movq'
/tmp/cc6v1FnN.s:1844: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:1846: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:1852: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:1854: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:1864: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:1870: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:1872: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:1878: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:1932: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:1935: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:1941: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:1944: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:1949: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:1956: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:1959: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:1962: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:2030: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:2036: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:2042: Error: suffix or operands invalid for `punpckhwd'
/tmp/cc6v1FnN.s:2044: Error: suffix or operands invalid for `punpckhwd'
/tmp/cc6v1FnN.s:2052: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:2054: Error: suffix or operands invalid for `punpckhwd'
/tmp/cc6v1FnN.s:2061: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:2065: Error: suffix or operands invalid for `punpckhwd'
/tmp/cc6v1FnN.s:2082: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:2088: Error: suffix or operands invalid for `punpcklwd'
/tmp/cc6v1FnN.s:2090: Error: suffix or operands invalid for `movq'
/tmp/cc6v1FnN.s:2092: Error: suffix or operands invalid for `movq'
/tmp/cc6v1FnN.s:2100: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:2102: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:2108: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:2110: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:2120: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:2126: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:2128: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:2134: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:2188: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:2191: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:2197: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:2200: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:2205: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:2212: Error: suffix or operands invalid for `paddw'
/tmp/cc6v1FnN.s:2215: Error: suffix or operands invalid for `psubw'
/tmp/cc6v1FnN.s:2218: Error: suffix or operands invalid for `psubw'
make: *** [RTjpeg.lo] Error 1


The same happens in several pieces of code. In some cases we have problems with asm in temp files created by gcc.

I don't think that upgrading is a bad idea, but I do think that pointing problems asap is healthier than pretending everithing is OK. I also dont despise the efforts  of  people who's pushing gcc to release 4.

Regards,

Casimiro


The same
Arjan van de Ven wrote:
On Fri, 2005-04-15 at 21:07 -0300, Casimiro de Almeida Barreto wrote:
  
Hello,

        Today I concluded migration from FC3 to FC4 rc2. Besides
        upgrading 610 packages I discovered that gcc is screwed:
        problems in asm and several other bugs make the compiler
        unusable for any practical purpose.
    

you give absolutely no concrete information to support your statement.
Please provide at least 2 or 3 examples to support what you say. 
(if you don't nobody will take your argument serious; just look at that
lilo-vs-grub thread recently).

I don't want to think that you are playing the roll of troll on this
mailing list and give you a chance to correct the first impression many
will get out of your original mail; however you should be aware that the
style of your posting sort of smells as if you are just trolling the
mainling list here. 


  

-- 
=======================================================================
As informações  contidas nesta mensagem são confidenciais e endereçadas
somente  ao  destinatário   acima   especificado.  Se você receber esta
mensagem  por  erro, favor  notificar o originador imediatamente. Fica,
desde  já, notificado  de  que  o uso,  divulgação,  cópia ou alteração
desautorizada  desta mensagem são estritamente proibidos e passíveis de
sanções legais civeis e criminais.

Este  e-mail   deve  estar  digitalmente assinado utilizando assinatura
GNUPG.  Caso  a   assinatura  esteja  corrompida,   favor  notificar  o
originador  imediatamente,  pois  isto  pode indicar que a mensagem foi
lida ou corrompida por terceiros.

=======================================================================

The information contained in this  message  is confidential and intended
to the recipients specified in the headers. If you received this message
by  error,  notify the  originator immediately.   The unauthorized  use,
disclosure,  copy  or alteration of this message are strictly  forbidden
and subjected to civil and criminal sanctions.

This e-mail must be digitally signed using GNUPG signature.   Should the
signature be corrupted,  please  notify the sender immediately  for that
may imply that the message was read or tampered by unauthorized people.