| Summary: | dev-lang/sr does not compile with gcc 3.4.4 | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Viðar Svansson <pjesi> |
| Component: | [OLD] Development | Assignee: | Gentoo Linux bug wranglers <bug-wranglers> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | normal | ||
| Priority: | High | ||
| Version: | 2005.1 | ||
| Hardware: | x86 | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
The SR compiler is using the depricated varargs.h and will not compile on the stable gcc compiler. We have edited the source and compiled it successfully so we could provide a patch and we are filing this bug to The University of Arizona as well. Here is the output from emerge: 14:27:31 (1.13 MB/s) - `/usr/portage/distfiles/sr.tar.Z' saved [1453739/1453739] >>> md5 files ;-) sr-2.3.2.ebuild >>> md5 files ;-) sr-2.3.3.ebuild >>> md5 files ;-) files/sr-2.3.2.patch >>> md5 files ;-) files/digest-sr-2.3.2 >>> md5 files ;-) files/digest-sr-2.3.3 >>> md5 src_uri ;-) sr.tar.Z >>> Unpacking source... >>> Unpacking sr.tar.Z to /var/tmp/portage/sr-2.3.2/work * Applying sr-2.3.2.patch ... [ ok ]>>> Source unpacked. echo "#" >paths.sh cmp -s multi/uni.h srmulti.h || cp multi/uni.h srmulti.h echo "# Created mechanically; DO NOT EDIT THIS FILE." >>paths.sh echo "#" >>paths.sh sed -n >>paths.sh <Configuration \ -e 's/#.*//' -e 's/[ ]*$//' -e 's/ *= */=/' \ -e 's/="*\(.* [^"]*\)"*$/="\1"/' -e '/^[A-Z0-9_]* *=/p' echo "" >>paths.sh cmp -s multi/uni.c srmulti.c || cp multi/uni.c srmulti.c echo >paths.tmp '/*' echo >>paths.tmp ' * Created mechanically; DO NOT EDIT THIS FILE.' echo >>paths.tmp ' */' sed >>paths.tmp <paths.sh \ -n -e 's/"//g' -e 's/.*/#define &"/' -e 's/= */ "/p' if cmp -s paths.tmp paths.h; then :; else cp paths.tmp paths.h; fi cc -g -c -o util.o util.c cd sr; make - --jobserver-fds=3,4 -j CC="cc" CFLAGS="-g " make[1]: Entering directory `/var/tmp/portage/sr-2.3.2/work/sr' make[1]: warning: jobserver unavailable: using -j1. Add `+' to parent make rule. cc -g -c -o main.o main.c ...expect 4 shift/reduce conflicts: yacc -d grammar.y conflicts: 4 shift/reduce mv y.tab.c grammar.c mv y.tab.h tokens.h cc -g -c -o grammar.o grammar.c lex tokens.l mv lex.yy.c tokens.c cc -g -c -o tokens.o tokens.c cc -g -c -o alloc.o alloc.c cc -g -c -o attest.o attest.c cc -g -c -o dynamic.o dynamic.c cc -g -c -o errors.o errors.c cc -g -c -o fold.o fold.c cc -g -c -o gdecl.o gdecl.c cc -g -c -o gexpr.o gexpr.c cc -g -c -o ginput.o ginput.c cc -g -c -o gloop.o gloop.c cc -g -c -o gmisc.o gmisc.c cc -g -c -o gparam.o gparam.c cc -g -c -o gstmt.o gstmt.c cc -g -c -o import.o import.c echo '/* Created mechanically; DO NOT EDIT THIS FILE */' >tkflags.h echo '' >>tkflags.h awk '/^%t[^*]*\*[BEG + END]*\*/{printf("TKFLAGS(%s,%s)\n",$2,$4);}' \ <grammar.y >>tkflags.h cc -g -c -o input.o input.c cc -g -c -o list.o list.c cc -g -c -o names.o names.c cc -g -c -o node.o node.c cc -g -c -o op.o op.c cc -g -c -o output.o output.c In file included from output.c:11: /usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/varargs.h:4:2: #error "GCC no longer implements <varargs.h>." /usr/lib/gcc/i686-pc-linux-gnu/3.4.4/include/varargs.h:5:2: #error "Revise your code to use <stdarg.h>." output.c:235: error: parse error before "va_dcl" output.c:236: error: syntax error before '{' token output.c:245: error: initializer element is not constant output.c:245: warning: data definition has no type or storage class output.c:247: warning: parameter names (without types) in function declaration output.c:247: warning: data definition has no type or storage class output.c:248: error: conflicting types for 'fmt' output.c:238: error: previous declaration of 'fmt' was here output.c:248: error: `ap' undeclared here (not in a function) output.c:248: error: parse error before "char" output.c:260: error: parse error before '--' token output.c:265: error: parse error before '--' token output.c:270: error: parse error before '--' token output.c:335: error: parse error before string constant output.c:350: error: parse error before string constant output.c:372: error: conflicting types for 'c' output.c:240: error: previous declaration of 'c' was here output.c:372: error: initializer element is not constant output.c:372: warning: data definition has no type or storage class output.c:372: error: parse error before ')' token output.c:382: error: parse error before string constant output.c:383: error: conflicting types for 'cprintf' protos.h:151: error: previous declaration of 'cprintf' was here output.c:383: error: conflicting types for 'cprintf' protos.h:151: error: previous declaration of 'cprintf' was here output.c:383: error: conflicting types for 'e' output.c:242: error: previous declaration of 'e' was here output.c:383: error: parse error before ')' token output.c:408: warning: parameter names (without types) in function declaration output.c:408: warning: data definition has no type or storage class output.c:410: error: parse error before "if" make[1]: *** [output.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/sr-2.3.2/work/sr' make: *** [all] Error 2