hi Applied Waldek's gcc patch for an older gcc. Got these rejects: dbxout.c.rej *************** *** 1916,1922 **** { stabstr_S ("@s"); stabstr_D (BITS_PER_UNIT * int_size_in_bytes (type)); - stabstr_S (";-20;"); } else { --- 1916,1922 ---- { stabstr_S ("@s"); stabstr_D (BITS_PER_UNIT * int_size_in_bytes (type)); + stabstr_S (";-20"); } else { gimplify.c.rej *************** *** 4948,4953 **** case POINTER_TYPE: case REFERENCE_TYPE: gimplify_type_sizes (TREE_TYPE (type), list_p); break; --- 4952,4959 ---- case POINTER_TYPE: case REFERENCE_TYPE: + break; + gimplify_type_sizes (TREE_TYPE (type), list_p); break; tree-flow-inline.h.rej *************** *** 1470,1476 **** return false; return (AGGREGATE_TYPE_P (TREE_TYPE (v)) && - TREE_CODE (TREE_TYPE (v)) != ARRAY_TYPE); } --- 1470,1477 ---- return false; return (AGGREGATE_TYPE_P (TREE_TYPE (v)) && + TREE_CODE (TREE_TYPE (v)) != ARRAY_TYPE + && TREE_CODE (TREE_TYPE (v)) != SET_TYPE); } varasm.c.rej *************** *** 2725,2731 **** VEC(constructor_elt, gc) *v; unsigned HOST_WIDE_INT idx; tree purpose, value; - v = VEC_alloc(constructor_elt, gc, VEC_length(constructor_elt, CONSTRUCTOR_ELTS (exp))); FOR_EACH_CONSTRUCTOR_ELT (CONSTRUCTOR_ELTS (exp), idx, purpose, value) --- 2725,2731 ---- VEC(constructor_elt, gc) *v; unsigned HOST_WIDE_INT idx; tree purpose, value; + v = VEC_alloc(constructor_elt, gc, VEC_length(constructor_elt, CONSTRUCTOR_ELTS (exp))); FOR_EACH_CONSTRUCTOR_ELT (CONSTRUCTOR_ELTS (exp), idx, purpose, value) *************** *** 3765,3771 **** /* Allow conversions to struct or union types if the value inside is okay. */ if (TREE_CODE (dest_type) == RECORD_TYPE - || TREE_CODE (dest_type) == UNION_TYPE) return initializer_constant_valid_p (src, endtype); } break; --- 3765,3776 ---- /* Allow conversions to struct or union types if the value inside is okay. */ if (TREE_CODE (dest_type) == RECORD_TYPE + || TREE_CODE (dest_type) == UNION_TYPE + #ifdef GPC + || TREE_CODE (TREE_TYPE (value)) == ARRAY_TYPE + #endif + ) + return initializer_constant_valid_p (src, endtype); } break; However, for that last one was able to find where the patch belongs, so here's a diff: 3843c3843,3847 < || TREE_CODE (dest_type) == UNION_TYPE) ---
|| TREE_CODE (dest_type) == UNION_TYPE #ifdef GPC || TREE_CODE (TREE_TYPE (value)) == ARRAY_TYPE #endif )
4017c4021 < ---
Wasn't sure how to correct the other rejects, so at least I got this far: *** glibc detected *** corrupted double-linked list: 0x08aa5f50 *** ../../gcc-4.2.0/gcc/tree-ssa-loop-ivopts.c In function 'find_optimal_iv_set': ../../gcc-4.2.0/gcc/tree-ssa-loop-ivopts.c: 5271 internal complier error: aborted Hope this helps Russ
participants (1)
-
Russ Whitaker