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. |