Created attachment 376936 [details, diff] Proposed patch gcc versions older than 4.4 don't build with bison 3, due to bison 3 apparently dropping deprecated syntax: /var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/build/./prev-gcc/xgcc -B/var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/build/./prev-gcc/ -B/usr/x86_64-pc-linux-gnu/bin/ -c -m64 -O2 -pipe -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Wno-error -DHAVE_CONFIG_H -I. -Itreelang -I/var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc -I/var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc/treelang -I/var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc/../include -I/var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc/../libcpp/include -I/var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc/../libdecnumber -I/var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc/../libdecnumber/bid -I../libdecnumber treelang/parse.c -o treelang/parse.o /var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc/treelang/parse.y: In function ‘yyparse’: /var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc/treelang/parse.y:689: error: expected ‘;’ before ‘}’ token /var/tmp/portage/sys-devel/gcc-4.3.6-r1/work/gcc-4.3.6/gcc/treelang/parse.y:690: error: expected ‘;’ before ‘}’ token Attached patch fixes it. It should apply cleanly to 4.1, 4.2 and 4.3; I didn't test earlier versions.
we should just drop treelang. it was removed in >=gcc-4.4. pretty sure it's not useful in old versions anymore either. https://en.wikipedia.org/wiki/Treelang
http://sources.gentoo.org/eclass/toolchain.eclass?r1=1.625&r2=1.626