diff options
author | nathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-25 09:52:54 +0000 |
---|---|---|
committer | nathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-25 09:52:54 +0000 |
commit | 7016c6128fa54ae4f68077da816fe0744cb8a852 (patch) | |
tree | b5d8f16132872f7a863ddce55007c0a82239369a /gcc/cp | |
parent | 9f6dc1d6f2bdb23c460032150be52ea0a564cdcd (diff) | |
download | gcc-7016c6128fa54ae4f68077da816fe0744cb8a852.tar.gz |
* tree.h (build_int_cst): New, sign extended constant.
(build_int_cstu): New, zero extended constant.
(build_int_cst_wide): Renamed from build_int_cst.
* tree.c (build_int_cst, build_int_cstu): New.
(build_int_cst_wide): Renamed from build_int_cst.
(make_vector_type, build_common_tree_nodes,
build_common_tree_nodes_2): Adjust build_int_cst calls.
* builtins.c (expand_builtin_prefetch, expand_builtin_strstr,
expand_builtin_strpbrk, expand_builtin_fputs,
build_string_literal, expand_builtin_printf,
expand_builtin_sprintf, fold_builtin_classify_type,
fold_builtin_lround, fold_builtin_bitop, fold_builtin_isascii,
fold_builtin_toascii, fold_builtin_isdigit,
simplify_builtin_strstr, simplify_builtin_strpbrk,
fold_builtin_fputs, simplify_builtin_sprintf): Likewise.
* c-common.c (start_fname_decls, fix_string_type, shorten_compare,
DEF_ATTR_INT): Likewise.
* c-decl.c (complete_array_type, check_bitfield_type_and_width):
Likewise.
* c-lex.c (interpret_integer, lex_charconst): Likewise.
* c-parse.in (primary) <TYPES_COMPATIBLE_P> Likewise.
* c-pretty-print.c (pp_c_integer_constant): Likewise.
* c-typeck.c (really_start_incremental_init, push_init_level,
set_nonincremental_init_from_string): Likewise.
* calls.c (load_register_parameters): Likewise.
convert.c (convert_to_pointer): Likewise.
coverage.c (coverage_counter_alloc, tree_coverage_counter_ref,
build_fn_info_type, build_fn_info_value, build_ctr_info_value,
build_gcov_info): Likewise.
* except.c (init_eh, assign_filter_values): Likewise.
* expmed.c (store_fixed_bit_field, extract_bit_field,
extract_fixed_bit_field, extract_split_bit_field, expand_shift,
expand_mult_const, expand_mult_highpart_adjust, extract_high_half,
expand_sdiv_pow2, expand_divmod, make_tree): Likewise.
* expr.c (convert_move, emit_group_load, emit_group_store,
expand_assignment, store_constructor, store_field,
expand_expr_real_1, reduce_to_bit_field_precision): Likewise.
fold-const.c (force_fit_type, int_const_binop, fold_convert_const,
invert_truthvalue, optimize_bit_field_compare,
decode_field_reference, all_ones_mask_p, constant_boolean_node,
fold_div_compare, fold, fold_read_from_constant_string,
fold_negate_const, fold_abs_const, fold_not_const, round_up,
round_down): Likewise.
* function.c (assign_parm_setup_block): Likewise.
* stmt.c (shift_return_value, expand_case, estimate_case_costs):
Likewise.
* stor-layout.c (layout_type, initialize_sizetypes,
set_min_and_max_values_for_integral_type): Likewise.
* tree-chrec.c (chrec_fold_multiply_poly_poly,
reset_evolution_in_loop): Likewise.
* tree-chrec.h (build_polynomial_chrec): Likewise.
* tree-complex.c (build_replicated_const): Likewise.
* tree-eh.c (honor_protect_cleanup_actions,
lower_try_finally_onedest, lower_try_finally_copy,
lower_try_finally_switch): Likewise.
* tree-mudflap.c (mf_build_string, mx_register_decls,
mudflap_register_call, mudflap_enqueue_constant): Likewise.
* tree-nested.c (get_trampoline_type, get_nl_goto_field): Likewise.
* tree-pretty-print.c (dump_generic_node): Likewise.
* tree-ssa-ccp.c (widen_bitfield, maybe_fold_offset_to_array_ref):
Likewise.
* tree-ssa-dom.c (simplify_rhs_and_lookup_avail_expr): Likewise.
* tree-ssa-loop-niter.c (number_of_iterations_cond,
loop_niter_by_eval, upper_bound_in_type, lower_bound_in_type):
Likewise.
* tree-ssa-loop-ivcanon.c (create_canonical_iv,
canonicalize_loop_induction_variables): Likewise.
* tree-vectorizer.c (vect_create_index_for_array_ref,
vect_transform_loop_bound, vect_compute_data_ref_alignment):
Likewise.
* config/alpha/alpha.c (alpha_initialize_trampoline, alpha_va_start,
alpha_gimplify_va_arg_1): Likewise.
* config/arm/arm.c (arm_get_cookie_size): Likewise.
* config/c4x/c4x.c (c4x_gimplify_va_arg_expr): Likewise.
* config/i386/i386.c (ix86_va_start, ix86_gimplify_va_arg): Likewise.
* config/ia64/ia64.c (ia64_gimplify_va_arg): Likewise.
* config/mips/mips.c (mips_build_builtin_va_list, mips_va_start,
mips_gimplify_va_arg_expr): Likewise.
* config/pa/pa.c (hppa_gimplify_va_arg_expr): Likewise.
* config/rs6000/rs6000.c (rs6000_va_start, rs6000_gimplify_va_arg,
add_compiler_branch_island): Likewise.
* config/s390/s390.c (s390_va_start): Likewise.
* config/sh/sh.c (sh_va_start): Likewise.
* config/stormy16/stormy16.c (xstormy16_expand_builtin_va_start):
Likewise.
* config/xtensa/xtensa.c (xtensa_va_start,
xtensa_gimplify_va_arg_expr): Likewise.
* objc/objc-act.c (build_objc_string_object,
build_objc_symtab_template, init_def_list, init_objc_symtab,
init_module_descriptor, generate_static_references,
build_selector_translation_table, get_proto_encoding,
build_typed_selector_reference, build_selector_reference,
build_next_objc_exception_stuff,
build_method_prototype_list_template, generate_descriptor_table,
generate_protocols, build_protocol_initializer,
build_ivar_list_template, build_method_list_template,
build_ivar_list_initializer, generate_ivars_list,
generate_dispatch_table, generate_protocol_list,
build_category_initializer, build_shared_structure_initializer,
generate_shared_structures, handle_impent,
generate_objc_image_info): Likewise.
2004-04-25 Paolo Bonzini <bonzini@gnu.org>
* cfglayout.c (duplicate_insn_chain): Remove references to
NOTE_INSN_LOOP_VTOP and NOTE_INSN_LOOP_CONT.
* cfgloop.h (struct loop): Remove fields vtop, cont and cont_dominator.
* cfgrtl.c (rtl_delete_block): Remove handling of NOTE_INSN_LOOP_CONT.
* final.c (final_scan_insn): Remove references to NOTE_INSN_LOOP_VTOP
and NOTE_INSN_LOOP_CONT.
* insn-notes.def (NOTE_INSN_LOOP_VTOP, NOTE_INSN_LOOP_CONT): Remove.
* jump.c (squeeze_notes): Remove references to NOTE_INSN_LOOP_VTOP
and NOTE_INSN_LOOP_CONT.
* loop.c (scan_loops, find_and_verify_loops, for_each_insn_in_loop,
check_dbra_loop, loop_dump_aux): Remove references to removed notes
and fields.
* reorg.c (mostly_true_jump): Do not rely on NOTE_INSN_LOOP_VTOPs.
* unroll.c (unroll_loop, copy_loop_body, loop_iterations): Remove
references to removed notes and fields.
(subtract_reg_term, ujump_to_loop_cont): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86544 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cp')
-rw-r--r-- | gcc/cp/ChangeLog | 23 | ||||
-rw-r--r-- | gcc/cp/call.c | 10 | ||||
-rw-r--r-- | gcc/cp/class.c | 6 | ||||
-rw-r--r-- | gcc/cp/cp-gimplify.c | 2 | ||||
-rw-r--r-- | gcc/cp/cvt.c | 4 | ||||
-rw-r--r-- | gcc/cp/decl.c | 12 | ||||
-rw-r--r-- | gcc/cp/decl2.c | 6 | ||||
-rw-r--r-- | gcc/cp/except.c | 2 | ||||
-rw-r--r-- | gcc/cp/mangle.c | 6 | ||||
-rw-r--r-- | gcc/cp/method.c | 4 | ||||
-rw-r--r-- | gcc/cp/rtti.c | 19 | ||||
-rw-r--r-- | gcc/cp/search.c | 2 |
12 files changed, 56 insertions, 40 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index d654d655455..fcb04047c64 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,23 @@ +2004-08-25 Nathan Sidwell <nathan@codesourcery.com> + + + * call.c (convert_class_to_reference): Adjust build_int_cst calls. + (build_user_type_conversion_1, convert_like_real, + build_java_interface_fn_ref, build_special_member_call): Likewise. + * class.c (finish_struct_1, build_vtbl_initializer): Likewise. + * cp-gimplify.c (cp_gimplify_expr): Likewise. + * cvt.c (cp_convert_to_pointer): Likewise. + * decl.c (cxx_init_decl_processing, complete_array_type): Likewise. + * decl2.c (start_static_initialization_or_destruction, + generate_ctor_or_dtor_function): Likewise. + * except.c (build_throw): Likewise. + * mangle.c (write_integer_cst): Likewise. + * method.c (finish_thunk): Likewise. + * rtti.c (build_headof, get_tinfo_decl_dynamic, + build_dynamic_cast_1, ptr_initializer, ptm_initializer, + get_pseudo_ti_init): Likewise. + * search.c (get_dynamic_cast_base_type): Likewise. + 2004-08-25 Zack Weinberg <zack@codesourcery.com> * class.c, search.c: Remove references to DWARF_DEBUG. @@ -6,10 +26,9 @@ * repo.c (extract_string): Reset backquote after one character. (get_base_filename): Fix indentation. - 2004-08-24 Nathan Sidwell <nathan@codesourcery.com> - * cp/decl.c (cxx_init_decl_processing): Adjust + * decl.c (cxx_init_decl_processing): Adjust build_common_tree_nodes call. 2004-08-24 Nathan Sidwell <nathan@codesourcery.com> diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 86f5e6ded36..6ebe9e24e23 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -919,7 +919,7 @@ convert_class_to_reference (tree t, tree s, tree expr) error messages, which we should not issue now because we are just trying to find a conversion operator. Therefore, we use NULL, cast to the appropriate type. */ - arglist = build_int_cst (build_pointer_type (s), 0, 0); + arglist = build_int_cst (build_pointer_type (s), 0); arglist = build_tree_list (NULL_TREE, arglist); reference_type = build_reference_type (t); @@ -2519,7 +2519,7 @@ build_user_type_conversion_1 (tree totype, tree expr, int flags) ctors = BASELINK_FUNCTIONS (ctors); - t = build_int_cst (build_pointer_type (totype), 0, 0); + t = build_int_cst (build_pointer_type (totype), 0); args = build_tree_list (NULL_TREE, expr); /* We should never try to call the abstract or base constructor from here. */ @@ -4181,7 +4181,7 @@ convert_like_real (conversion *convs, tree expr, tree fn, int argnum, if (DECL_CONSTRUCTOR_P (convfn)) { tree t = build_int_cst (build_pointer_type (DECL_CONTEXT (convfn)), - 0, 0); + 0); args = build_tree_list (NULL_TREE, expr); if (DECL_HAS_IN_CHARGE_PARM_P (convfn) @@ -4959,7 +4959,7 @@ build_java_interface_fn_ref (tree fn, tree instance) break; i++; } - idx = build_int_cst (NULL_TREE, i, 0); + idx = build_int_cst (NULL_TREE, i); lookup_args = tree_cons (NULL_TREE, klass_ref, tree_cons (NULL_TREE, iface_ref, @@ -5035,7 +5035,7 @@ build_special_member_call (tree instance, tree name, tree args, /* Handle the special case where INSTANCE is NULL_TREE. */ if (name == complete_ctor_identifier && !instance) { - instance = build_int_cst (build_pointer_type (class_type), 0, 0); + instance = build_int_cst (build_pointer_type (class_type), 0); instance = build1 (INDIRECT_REF, class_type, instance); } else diff --git a/gcc/cp/class.c b/gcc/cp/class.c index e17a438b799..bd0d3f5523e 100644 --- a/gcc/cp/class.c +++ b/gcc/cp/class.c @@ -5085,7 +5085,7 @@ finish_struct_1 (tree t) thunk base function. */ DECL_VINDEX (fndecl) = NULL_TREE; else if (TREE_CODE (DECL_VINDEX (fndecl)) != INTEGER_CST) - DECL_VINDEX (fndecl) = build_int_cst (NULL_TREE, vindex, 0); + DECL_VINDEX (fndecl) = build_int_cst (NULL_TREE, vindex); } } @@ -7279,7 +7279,7 @@ build_vtbl_initializer (tree binfo, vid.generate_vcall_entries = true; /* The first vbase or vcall offset is at index -3 in the vtable. */ vid.index = build_int_cst (ssizetype, - -3 * TARGET_VTABLE_DATA_ENTRY_DISTANCE, -1); + -3 * TARGET_VTABLE_DATA_ENTRY_DISTANCE); /* Add entries to the vtable for RTTI. */ build_rtti_vtbl_entries (binfo, &vid); @@ -7405,7 +7405,7 @@ build_vtbl_initializer (tree binfo, { tree fdesc = build2 (FDESC_EXPR, vfunc_ptr_type_node, TREE_OPERAND (init, 0), - build_int_cst (NULL_TREE, i, 0)); + build_int_cst (NULL_TREE, i)); TREE_CONSTANT (fdesc) = 1; TREE_INVARIANT (fdesc) = 1; diff --git a/gcc/cp/cp-gimplify.c b/gcc/cp/cp-gimplify.c index e066f7b0f0b..d9fc928529c 100644 --- a/gcc/cp/cp-gimplify.c +++ b/gcc/cp/cp-gimplify.c @@ -211,7 +211,7 @@ cp_gimplify_expr (tree *expr_p, tree *pre_p, tree *post_p) case EMPTY_CLASS_EXPR: /* We create an INTEGER_CST with RECORD_TYPE and value zero. */ - *expr_p = build_int_cst (TREE_TYPE (*expr_p), 0, 0); + *expr_p = build_int_cst (TREE_TYPE (*expr_p), 0); ret = GS_OK; break; diff --git a/gcc/cp/cvt.c b/gcc/cp/cvt.c index 5a6584d1de9..ede4770cf04 100644 --- a/gcc/cp/cvt.c +++ b/gcc/cp/cvt.c @@ -264,12 +264,12 @@ cp_convert_to_pointer (tree type, tree expr, bool force) { /* A NULL pointer-to-member is represented by -1, not by zero. */ - expr = build_int_cst (type, -1, -1); + expr = build_int_cst (type, -1); /* Fix up the representation of -1 if appropriate. */ expr = force_fit_type (expr, 0, false, false); } else - expr = build_int_cst (type, 0, 0); + expr = build_int_cst (type, 0); return expr; } diff --git a/gcc/cp/decl.c b/gcc/cp/decl.c index 0ae7d7136fe..05db490cffc 100644 --- a/gcc/cp/decl.c +++ b/gcc/cp/decl.c @@ -2963,8 +2963,8 @@ cxx_init_decl_processing (void) java_char_type_node = record_builtin_java_type ("__java_char", -16); java_boolean_type_node = record_builtin_java_type ("__java_boolean", -1); - integer_two_node = build_int_cst (NULL_TREE, 2, 0); - integer_three_node = build_int_cst (NULL_TREE, 3, 0); + integer_two_node = build_int_cst (NULL_TREE, 2); + integer_three_node = build_int_cst (NULL_TREE, 3); record_builtin_type (RID_BOOL, "bool", boolean_type_node); truthvalue_type_node = boolean_type_node; @@ -5254,13 +5254,13 @@ complete_array_type (tree type, tree initial_value, int do_default) = int_size_in_bytes (TREE_TYPE (TREE_TYPE (initial_value))); maxindex = build_int_cst (NULL_TREE, (TREE_STRING_LENGTH (initial_value) - / eltsize) - 1, 0); + / eltsize) - 1); } else if (TREE_CODE (initial_value) == CONSTRUCTOR) { tree elts = CONSTRUCTOR_ELTS (initial_value); - maxindex = build_int_cst (ssizetype, -1, -1); + maxindex = build_int_cst (ssizetype, -1); for (; elts; elts = TREE_CHAIN (elts)) { if (TREE_PURPOSE (elts)) @@ -5278,14 +5278,14 @@ complete_array_type (tree type, tree initial_value, int do_default) initial_value = NULL_TREE; /* Prevent further error messages. */ - maxindex = build_int_cst (NULL_TREE, 0, 0); + maxindex = build_int_cst (NULL_TREE, 0); } } if (!maxindex) { if (do_default) - maxindex = build_int_cst (NULL_TREE, 0, 0); + maxindex = build_int_cst (NULL_TREE, 0); value = 2; } diff --git a/gcc/cp/decl2.c b/gcc/cp/decl2.c index efb86b5534a..cb9628ca5d7 100644 --- a/gcc/cp/decl2.c +++ b/gcc/cp/decl2.c @@ -2351,7 +2351,7 @@ start_static_initialization_or_destruction (tree decl, int initp) guard_if_stmt = begin_if_stmt (); cond = cp_build_binary_op (EQ_EXPR, priority_decl, - build_int_cst (NULL_TREE, priority, 0)); + build_int_cst (NULL_TREE, priority)); init_cond = initp ? integer_one_node : integer_zero_node; init_cond = cp_build_binary_op (EQ_EXPR, initialize_p_decl, @@ -2602,10 +2602,10 @@ generate_ctor_or_dtor_function (bool constructor_p, int priority, body = start_objects (function_key, priority); arguments = tree_cons (NULL_TREE, - build_int_cst (NULL_TREE, priority, 0), + build_int_cst (NULL_TREE, priority), NULL_TREE); arguments = tree_cons (NULL_TREE, - build_int_cst (NULL_TREE, constructor_p, 0), + build_int_cst (NULL_TREE, constructor_p), arguments); finish_expr_stmt (build_function_call (fndecl, arguments)); } diff --git a/gcc/cp/except.c b/gcc/cp/except.c index e572aa7128b..72ce2867d29 100644 --- a/gcc/cp/except.c +++ b/gcc/cp/except.c @@ -721,7 +721,7 @@ build_throw (tree exp) cleanup = build1 (ADDR_EXPR, cleanup_type, cleanup); } else - cleanup = build_int_cst (cleanup_type, 0, 0); + cleanup = build_int_cst (cleanup_type, 0); tmp = tree_cons (NULL_TREE, cleanup, NULL_TREE); tmp = tree_cons (NULL_TREE, throw_type, tmp); diff --git a/gcc/cp/mangle.c b/gcc/cp/mangle.c index b8feaffce13..bdff9778dae 100644 --- a/gcc/cp/mangle.c +++ b/gcc/cp/mangle.c @@ -1183,9 +1183,9 @@ write_integer_cst (const tree cst) } type = c_common_signed_or_unsigned_type (1, TREE_TYPE (cst)); - base = build_int_cst (type, chunk, 0); - n = build_int_cst (type, - TREE_INT_CST_LOW (cst), TREE_INT_CST_HIGH (cst)); + base = build_int_cstu (type, chunk); + n = build_int_cst_wide (type, + TREE_INT_CST_LOW (cst), TREE_INT_CST_HIGH (cst)); if (sign < 0) { diff --git a/gcc/cp/method.c b/gcc/cp/method.c index d0bad5df4fb..11107b1a077 100644 --- a/gcc/cp/method.c +++ b/gcc/cp/method.c @@ -179,9 +179,7 @@ void finish_thunk (tree thunk) { tree function, name; - tree fixed_offset = build_int_cst (ssizetype, - THUNK_FIXED_OFFSET (thunk), - THUNK_FIXED_OFFSET (thunk) < 0 ? -1 : 0); + tree fixed_offset = build_int_cst (ssizetype, THUNK_FIXED_OFFSET (thunk)); tree virtual_offset = THUNK_VIRTUAL_OFFSET (thunk); my_friendly_assert (!DECL_NAME (thunk) && DECL_THUNK_P (thunk), 20021127); diff --git a/gcc/cp/rtti.c b/gcc/cp/rtti.c index 6e9a6ea64fa..1bc3952b3d7 100644 --- a/gcc/cp/rtti.c +++ b/gcc/cp/rtti.c @@ -151,7 +151,7 @@ build_headof (tree exp) /* The offset-to-top field is at index -2 from the vptr. */ index = build_int_cst (NULL_TREE, - -2 * TARGET_VTABLE_DATA_ENTRY_DISTANCE, -1); + -2 * TARGET_VTABLE_DATA_ENTRY_DISTANCE); offset = build_vtbl_ref (build_indirect_ref (exp, NULL), index); @@ -227,7 +227,7 @@ get_tinfo_decl_dynamic (tree exp) /* The RTTI information is at index -1. */ index = build_int_cst (NULL_TREE, - -1 * TARGET_VTABLE_DATA_ENTRY_DISTANCE, -1); + -1 * TARGET_VTABLE_DATA_ENTRY_DISTANCE); t = build_vtbl_ref (exp, index); t = convert (type_info_ptr_type, t); } @@ -590,7 +590,7 @@ build_dynamic_cast_1 (tree type, tree expr) { warning ("dynamic_cast of `%#D' to `%#T' can never succeed", op, type); - retval = build_int_cst (type, 0, 0); + retval = build_int_cst (type, 0); return retval; } } @@ -879,7 +879,7 @@ ptr_initializer (tree desc, tree target) if (incomplete) flags |= 8; - init = tree_cons (NULL_TREE, build_int_cst (NULL_TREE, flags, 0), init); + init = tree_cons (NULL_TREE, build_int_cst (NULL_TREE, flags), init); init = tree_cons (NULL_TREE, get_tinfo_ptr (TYPE_MAIN_VARIANT (to)), init); @@ -909,7 +909,7 @@ ptm_initializer (tree desc, tree target) flags |= 0x8; if (!COMPLETE_TYPE_P (klass)) flags |= 0x10; - init = tree_cons (NULL_TREE, build_int_cst (NULL_TREE, flags, 0), init); + init = tree_cons (NULL_TREE, build_int_cst (NULL_TREE, flags), init); init = tree_cons (NULL_TREE, get_tinfo_ptr (TYPE_MAIN_VARIANT (to)), init); @@ -1090,10 +1090,9 @@ get_pseudo_ti_init (tree type, tree var_desc) /* Combine offset and flags into one field. */ offset = cp_build_binary_op (LSHIFT_EXPR, offset, - build_int_cst (NULL_TREE, 8, 0)); + build_int_cst (NULL_TREE, 8)); offset = cp_build_binary_op (BIT_IOR_EXPR, offset, - build_int_cst (NULL_TREE, - flags, 0)); + build_int_cst (NULL_TREE, flags)); base_init = tree_cons (NULL_TREE, offset, base_init); base_init = tree_cons (NULL_TREE, tinfo, base_init); base_init = build_constructor (NULL_TREE, base_init); @@ -1103,11 +1102,11 @@ get_pseudo_ti_init (tree type, tree var_desc) base_inits = tree_cons (NULL_TREE, base_inits, NULL_TREE); /* Prepend the number of bases. */ base_inits = tree_cons (NULL_TREE, - build_int_cst (NULL_TREE, nbases, 0), + build_int_cst (NULL_TREE, nbases), base_inits); /* Prepend the hint flags. */ base_inits = tree_cons (NULL_TREE, - build_int_cst (NULL_TREE, hint, 0), + build_int_cst (NULL_TREE, hint), base_inits); return class_initializer (var_desc, type, base_inits); diff --git a/gcc/cp/search.c b/gcc/cp/search.c index 1c52a941c4a..4acd2d5a1ca 100644 --- a/gcc/cp/search.c +++ b/gcc/cp/search.c @@ -347,7 +347,7 @@ get_dynamic_cast_base_type (tree subtype, tree target) if (!boff) return offset; - offset = build_int_cst (ssizetype, boff, -1); + offset = build_int_cst (ssizetype, boff); return offset; } |