Even with the patch for 44512 installed, a build fails due to problems in the spu port, e.g.:
../../gcc/gcc/config/spu/spu.c:294: error: invalid conversion from tree_node* (*)(tree_node**, tree_node*, tree_node*, int, unsigned char*) to tree_node* (*)(tree_node**, tree_node*, tree_node*, int, bool*) ../../gcc/gcc/config/spu/spu.c:294: error: invalid conversion from tree_node* (*)(tree_node**, tree_node*, tree_node*, int, unsigned char*) to tree_node* (*)(tree_node**, tree_node*, tree_node*, int, bool*) ../../gcc/gcc/config/spu/spu.c:468: error: invalid conversion from unsigned char (*)(tree_node*, tree_node*) to bool (*)(tree_node*, tree_node*) ../../gcc/gcc/config/spu/spu.c:468: error: invalid conversion from unsigned char (*)(machine_mode) to bool (*)(machine_mode) ../../gcc/gcc/config/spu/spu.c:468: error: invalid conversion from unsigned char (*)(machine_mode) to bool (*)(machine_mode) ../../gcc/gcc/config/spu/spu.c:468: error: invalid conversion from unsigned char (*)(rtx_def*, int, int, int*, bool) to bool (*)(rtx_def*, int, int, int*, bool) ../../gcc/gcc/config/spu/spu.c:468: error: invalid conversion from unsigned char (*)(int*, machine_mode, const tree_node*, unsigned char) to bool (*)(int*, machine_mode, const tree_node*, bool) ../../gcc/gcc/config/spu/spu.c: In function bool spu_scalar_mode_supported_p(machine_mode): ../../gcc/gcc/config/spu/spu.c:549: error: new declaration bool spu_scalar_mode_supported_p(machine_mode) ../../gcc/gcc/config/spu/spu.c:153: error: ambiguates old declaration unsigned char spu_scalar_mode_supported_p(machine_mode) ../../gcc/gcc/config/spu/spu.c: In function bool spu_vector_mode_supported_p(machine_mode): ../../gcc/gcc/config/spu/spu.c:571: error: new declaration bool spu_vector_mode_supported_p(machine_mode) ../../gcc/gcc/config/spu/spu.c:154: error: ambiguates old declaration unsigned char spu_vector_mode_supported_p(machine_mode) ../../gcc/gcc/config/spu/spu.c: In function tree_node* spu_handle_fndecl_attribute(tree_node**, tree_node*, tree_node*, int, bool*): ../../gcc/gcc/config/spu/spu.c:3851: warning: unknown conversion type character E in format ../../gcc/gcc/config/spu/spu.c:3851: warning: too many arguments for format ../../gcc/gcc/config/spu/spu.c: In function tree_node* spu_handle_vector_attribute(tree_node**, tree_node*, tree_node*, int, bool*): ../../gcc/gcc/config/spu/spu.c:3908: warning: unknown conversion type character E in format ../../gcc/gcc/config/spu/spu.c:3908: warning: too many arguments for format ../../gcc/gcc/config/spu/spu.c: In function void ea_load_store_inline(rtx_def*, bool, rtx_def*, rtx_def*): ../../gcc/gcc/config/spu/spu.c:4492: error: cannot convert reg_note to machine_mode for argument 2 to rtx_def* gen_rtx_fmt_ee_stat(rtx_code, machine_mode, rtx_def*, rtx_def*) ../../gcc/gcc/config/spu/spu.c: In function bool spu_rtx_costs(rtx_def*, int, int, int*, bool): ../../gcc/gcc/config/spu/spu.c:5359: error: new declaration bool spu_rtx_costs(rtx_def*, int, int, int*, bool) ../../gcc/gcc/config/spu/spu.c:199: error: ambiguates old declaration unsigned char spu_rtx_costs(rtx_def*, int, int, int*, bool) ../../gcc/gcc/config/spu/spu.c: In function bool spu_function_ok_for_sibcall(tree_node*, tree_node*): ../../gcc/gcc/config/spu/spu.c:5482: error: new declaration bool spu_function_ok_for_sibcall(tree_node*, tree_node*) ../../gcc/gcc/config/spu/spu.c:201: error: ambiguates old declaration unsigned char spu_function_ok_for_sibcall(tree_node*, tree_node*) ../../gcc/gcc/config/spu/spu.c: At global scope: ../../gcc/gcc/config/spu/spu.c:7086: warning: unused parameter labelno In file included from ../../gcc/gcc/config/spu/spu.c:7092: ../../gcc/gcc/config/spu/spu.c:153: warning: unsigned char spu_scalar_mode_supported_p(machine_mode) declared static but never defined ../../gcc/gcc/config/spu/spu.c:154: warning: unsigned char spu_vector_mode_supported_p(machine_mode) declared static but never defined ../../gcc/gcc/config/spu/spu.c:181: warning: tree_node* spu_handle_fndecl_attribute(tree_node**, tree_node*, tree_node*, int, unsigned char*) declared static but never defined ../../gcc/gcc/config/spu/spu.c:184: warning: tree_node* spu_handle_vector_attribute(tree_node**, tree_node*, tree_node*, int, unsigned char*) declared static but never defined ../../gcc/gcc/config/spu/spu.c:188: warning: unsigned char spu_pass_by_reference(int*, machine_mode, const tree_node*, unsigned char) declared static but never defined ../../gcc/gcc/config/spu/spu.c:199: warning: unsigned char spu_rtx_costs(rtx_def*, int, int, int*, bool) declared static but never defined ../../gcc/gcc/config/spu/spu.c:201: warning: unsigned char spu_function_ok_for_sibcall(tree_node*, tree_node*) declared static but never defined ../../gcc/gcc/config/spu/spu.c:3843: warning: tree_node* spu_handle_fndecl_attribute(tree_node**, tree_node*, tree_node*, int, bool*) defined but not used ../../gcc/gcc/config/spu/spu.c:3860: warning: tree_node* spu_handle_vector_attribute(tree_node**, tree_node*, tree_node*, int, bool*) defined but not used I have a patch set for it, but it got lumped in a 642817 byte patch. I'll be working on extracting the actually necessary parts. -- Summary: spu port fails to build with --enable-build-with-cxx Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org GCC host triplet: i686-pc-linux-gnu GCC target triplet: spu-elf BugsThisDependsOn: 44512 OtherBugsDependingO 44433 nThis: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44640