I tried to upgrade gcc to fix a compile error in ghostscript, which seemed to want gcc-3.3.3. See: http://bugs.gentoo.org/show_bug.cgi?id=43400 Reproducible: Always Steps to Reproduce: 1.emerge --deep -u gcc-3.3.3-r1.ebuild Actual Results: /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1109: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1110: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1112: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1136: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1137: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c: In function `bounds_build_component_ref': /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1315: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1324: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1332: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c: In function `bounds_build_component_indirect_ref': /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1373: warning: implicit declaration of function `FIELD_DECL_CHECK' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1373: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1419: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c: In function `bounds_build_array_reference': /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1613: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1616: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c: In function `bounds_build_ptr_plus_int': /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1818: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1829: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1830: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1832: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1840: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1841: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1843: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1846: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1856: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1856: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1857: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:1857: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c: In function `bounds_build_args': /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:2237: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:2246: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:2323: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c: In function `bounds_note_call_for_deletion': /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:2420: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c: In function `bounds_convert_funcname': /var/tmp/portage/gcc-3.3.3-r1/work/gcc-3.3.3/gcc/c-bounds.c:2689: error: invalid type argument of `->' make[2]: *** [c-bounds.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory `/var/tmp/portage/gcc-3.3.3-r1/work/build/gcc' make[1]: *** [stage1_build] Error 2 make[1]: Leaving directory `/var/tmp/portage/gcc-3.3.3-r1/work/build/gcc' make: *** [bootstrap-lean] Error 2 !!! ERROR: sys-devel/gcc-3.3.3-r1 failed. !!! Function src_compile, Line 498, Exitcode 2 !!! (no error message) Expected Results: Success?
gcc-3.3.3 - fbounds checking has been removed from the tree due to these types of problems on an array of arches.. Please try again with gcc-3.3.3-r2 Q) How do I unmask and begin testing? A) mkdir -p /etc/portage/ echo =sys-devel/gcc-3.3.3-r2 >> /etc/portage/package.unmask # Optional but suggested. echo =sys-devel/binutils-2.15.90.0.3-r1 >> /etc/portage/package.unmask ACCEPT_KEYWORDS="~x86" emerge -e system
Needless to say -r1 is no longer in the tree so this bug no longer applies.