When the boundschecking flag is enabled on gcc-3.3.5-r1(the current stable version) it fails to compile. Reproducible: Always Steps to Reproduce: 1. emerge gcc-3.3.5-r1 with USE="boundschecking" Actual Results: The error that happens on the compilations is: touch stmp_libboundscheck cd /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc && makeinfo --no-split -I doc -I doc/include -o doc/gcc.info doc/gcc.texi /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/doc//cppopts.texi:124: warning: @strong{Note:} produces a spurious cross-reference in Info; reword to avoid that. /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/doc//cppopts.texi:321: warning: @strong{Note:} produces a spurious cross-reference in Info; reword to avoid that. In file included from /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:25: /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/tree.h:351:24: tree-check.h: No such file or directory In file included from /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:26: /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/rtl.h:1783:20: genrtl.h: No such file or directory In file included from /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:35: /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/ggc.h:22:24: gtype-desc.h: No such file or directory /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_static_constructors': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:94: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:126: warning: implicit declaration of function `IDENTIFIER_NODE_CHECK' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:126: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:227: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:265: warning: implicit declaration of function `SCOPE_STMT_CHECK' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:265: warning: implicit declaration of function `TREE_LIST_CHECK' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:265: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:265: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:266: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:266: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:268: warning: implicit declaration of function `COMPOUND_STMT_CHECK' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:268: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `check_static_pointer_initialization': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:287: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:301: warning: implicit declaration of function `INTEGER_CST_CHECK' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:301: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:302: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `declare_private_statics': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:328: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `declare_function_number_var': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:350: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `declare_object_var': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:371: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:375: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:375: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `find_object': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:407: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:423: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:423: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:425: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `maybe_find_object': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:451: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `add_object': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:483: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_mark_for_runtime_check': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:512: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_frig_decl_initial': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:554: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:569: warning: function `INTEGER_CST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:569: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:570: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:589: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:589: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_expand_decl_cleanup': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:644: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `locate_var_in_tree': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:681: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:691: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:694: warning: implicit declaration of function `FUNCTION_DECL_CHECK' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:694: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:716: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:716: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:740: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:740: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:741: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:744: warning: implicit declaration of function `TREE_VEC_CHECK' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:744: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `generate_assignment': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:762: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:776: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:776: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_cancel_address_expr': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:814: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:830: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:830: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:841: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:841: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:850: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:850: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:884: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:884: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:885: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:886: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:887: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:888: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:908: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:908: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:918: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:918: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:920: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:936: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:936: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:938: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:967: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:967: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:979: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:979: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:998: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:998: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_check_assignment': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1031: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_reference': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1041: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1063: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1063: error: invalid type argument of `->' gcc -c -O -DIN_GCC -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -I. -I/var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc -I/var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/. -I/var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/config -I/var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/../include /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/errors.c -o errors.o /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1091: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1091: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1092: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1094: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1118: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1118: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1119: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_lookup_field': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1238: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_component_ref': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1273: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1295: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1295: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1304: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1304: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1312: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1312: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_component_indirect_ref': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1323: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1352: warning: implicit declaration of function `FIELD_DECL_CHECK' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1352: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1398: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_array_reference': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1538: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1591: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1591: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1594: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1594: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_can_test_array_reference_now': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1722: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_ptr_plus_int': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1766: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1794: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1794: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1805: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1805: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1806: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1808: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1816: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1816: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1817: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1819: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1822: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1832: warning: function `INTEGER_CST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1832: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1832: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1833: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1833: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_ptr_diff': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1860: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_comparison': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:1913: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_inc_or_dec': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2042: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_truthvalue_conversion': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2093: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_invert_truthvalue': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2131: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_args': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2184: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2207: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2207: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2216: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2293: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_is_deletable_fn_p': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2334: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_note_call_for_deletion': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2355: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2387: warning: function `TREE_LIST_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2387: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_delete_redundant_calls': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2420: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `delete_call': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2470: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `build_current_lineno': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2500: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `build_current_filename': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2506: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_string': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2515: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `build_decl_lineno': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2533: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `build_decl_filename': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2539: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_build_function_call': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2546: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_pointer_from_array': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2575: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_pointer_from_array_type': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2599: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_pointer_from_array_ref': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2618: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_convert_funcname': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2636: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2645: warning: function `IDENTIFIER_NODE_CHECK' was previously declared within a block /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2645: error: invalid type argument of `->' /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_hash': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2738: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_lookup': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2777: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_func_hash': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2926: warning: traditional C rejects ISO C style function definitions /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c: In function `bounds_func_lookup': /var/tmp/portage/gcc-3.3.5-r1/work/gcc-3.3.5/gcc/c-bounds.c:2978: warning: traditional C rejects ISO C style function definitions make[2]: *** [c-bounds.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[2]: Leaving directory `/var/tmp/portage/gcc-3.3.5-r1/work/build/gcc' make[1]: *** [stage1_build] Error 2 make[1]: Leaving directory `/var/tmp/portage/gcc-3.3.5-r1/work/build/gcc' make: *** [bootstrap-lean] Error 2 !!! ERROR: sys-devel/gcc-3.3.5-r1 failed. !!! Function gcc_do_make, Line 1074, Exitcode 2 !!! emake failed with bootstrap-lean !!! If you need support, post the topmost build error, NOT this status message. Expected Results: gcc should compile
I have the same problem. Here is the emerge --info: ################################ Portage 2.0.51.19 (default-linux/x86/2004.2, gcc-3.3.5, glibc-2.3.4.20041102-r1, 2.6.11-gentoo-r4 i686) ================================================================= System uname: 2.6.11-gentoo-r4 i686 Pentium III (Coppermine) Gentoo Base System version 1.4.16 Python: dev-lang/python-2.3.4-r1 [2.3.4 (#1, Feb 8 2005, 09:39:29)] distcc 2.16 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled] ccache version 2.3 [enabled] dev-lang/python: 2.3.4-r1 sys-devel/autoconf: 2.59-r6, 2.13 sys-devel/automake: 1.8.5-r3, 1.5, 1.9.4, 1.6.3, 1.7.9-r1, 1.4_p6 sys-devel/binutils: 2.15.92.0.2-r1 sys-devel/libtool: 1.5.10-r4 virtual/os-headers: 2.6.8.1-r2 ACCEPT_KEYWORDS="x86" AUTOCLEAN="yes" CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/kde/2/share/config /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3/share/config /usr/lib/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/ /var/qmail/control" CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /usr/X11R6/bin/startx /etc/env.d" CXXFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer" DISTDIR="/mnt/gentoo_distfiles" FEATURES="autoaddcvs autoconfig candy ccache distlocks fixpackages sandbox severe sfperms strict" GENTOO_MIRRORS=" http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo http://ftp.snt.utwente.nl/pub/os/linux/gentoo http://gentoo.oregonstate.edu/ http://www.ibiblio.org/pub/Linux/distributions/gentoo" MAKEOPTS="-j2" PKGDIR="/var_tmp/packages" PORTAGE_TMPDIR="/var_tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X acl adns alsa ansi apache2 atlas auctex audiofile avantgo avi bash-completion bcmath berkdb bitmap-fonts blas blender-game bonobo boundschecking bzip2 bzlib cdda cddb cdio cdparanoia cdr clisp cmucl cracklib crypt css cups curl divx4linux doc drac dv dvd dvdread edl eds emacs emacs-w3 emboss encode esd ethereal evo exif faac faad fam fame festival ffmpeg fftw flac flash fmod font-server foomaticdb fortran fpx freetts ftp gcj gcl gd gdbm gif gimp gimpprint ginac gkrellm glade gmp gnome gnomedb gnuplot gpm gprof graphviz gs gsl gstreamer gtk gtk2 gtkhtml guile hal hbci high-ints howl ieee1394 imagemagick imap imlib imlib2 ipv6 jabber java javascript joystick jpeg jpeg2k lapack latex ldap leim libg++ libgda libwww lm_sensors lzw lzw-tiff mad makecheck matroska mikmod mime mjpeg mmx mmx2 mng monkey mono motif mozilla moznocompose moznoirc moznomail mozp3p mozsvg mp3 mpeg mpeg2 mpeg4 mpi mplayer mule multi-tty multislot music mysql ncurses netcdf network neural nls nodrm nptl nvidia ofx ogg oggvorbis openal opengl oscar pam pda pdf pdflib perl plotutils png posix povray python qt quicktime quotes rdesktop readline real recode rrdtool rtc samba screenshot sdl slang slp smime sndfile speex spell sse sse2 ssl svg svga tcltk tcpd tetex tga theora tiff transcode truetype truetype-fonts type1 type1-fonts unicode usb vidix vlm vorbis wmf xanim xemacs xine xml xml2 xmms xosd xpm xrandr xsl xv xvid xvmc yahoo zeroconf zlib" Unset: ASFLAGS, CBUILD, CTARGET, LANG, LC_ALL, LDFLAGS ##############################
appears to be a parallel build issue ... should work with MAKEOPTS=-j1 ...
Thanks SpanKY, I recompiled with -j1 and all went well. gcc has been emerged, and I will check soon to see how tit behaves with the new flag. I did not think about that since the plain gcc never gave me any problem.
I have tried MAKEOPTS="-j1" and it still doesn't work.
Hmm, if I modify /etc/make.conf with MAKEOPTS="-j1", then it works. However, if I have MAKEOPTS="-j2" in make.conf and then do MAKEOPTS="-j1" emerge -uv gcc then it doesn't.
I confirm that I used -j1 on make.conf, not on the command line. No idea if it would work in the latter case.
forced gcc to build with -j1 when USE=boundschecking