* expr.c (expand_expr, case EXPR_WITH_FILE_LOCATION): Save/restore
input_filename and lineno around expand_expr call. Set them to values
in WFL before expand_expr call.
Dave Love [Fri, 15 May 1998 04:27:51 +0000 (04:27 +0000)]
mike-g77.exp: New file.
1998-05-15 Dave Love <d.love@dl.ac.uk>
* lib/mike-g77.exp: New file.
* g77.f-torture/noncompile/noncompile.exp,
g77.f-torture/noncompile/check0.f: New files.
J"orn Rennecke [Thu, 14 May 1998 21:36:53 +0000 (21:36 +0000)]
reload1.c (delete_output_reload): Ignore single USE that was emitted for the pseudo use of this INSN.
* reload1.c (delete_output_reload): Ignore single USE that
was emitted for the pseudo use of this INSN.
If the no reference to REG between OUTPUT_RELOAD_INSN and INSN
remains, we can always delete OUTPUT_RELOAD_INSN.
Jim Wilson [Thu, 14 May 1998 13:00:18 +0000 (13:00 +0000)]
Patch from Gary McGary to fix i960 problem with out-of-range shifts.
* i960.h (hard_regno_mode_ok): Changed to function from array of
unsigned.
(HARD_REGNO_MODE_OK): Call function instead of testing bit.
* i960.c (hard_regno_mode_ok): Changed to function from array of
unsigned.
Brendan Kehoe [Thu, 14 May 1998 12:29:41 +0000 (12:29 +0000)]
typeck.c (original_type): New function.
* typeck.c (original_type): New function.
(common_type): Use it to get the DECL_ORIGINAL_TYPE for T1 and T2,
to see if they're actually the same.
* cp-tree.h (original_type): Declare.
fix problem when you have multiple identical typedefs
Craig Burley [Thu, 14 May 1998 07:24:52 +0000 (07:24 +0000)]
[multiple changes]
Sun Apr 26 09:05:50 1998 Craig Burley <burley@gnu.org>
* com.c (ffecom_char_enhance_arg_): Wrap the upper bound
(the PARM_DECL specifying the length of the CHARACTER*(*)
dummy arg) in a variable_size invocation, to prevent
dwarf2out.c crashing when compiling code with -g.
Sat Apr 18 05:03:21 1998 Craig Burley <burley@gnu.org>
* com.c (ffecom_check_size_overflow_): Ignore overflow
as well if dummy argument.
Craig Burley [Thu, 14 May 1998 06:51:23 +0000 (06:51 +0000)]
[multiple changes]
Sun Apr 26 09:05:50 1998 Craig Burley <burley@gnu.org>
* com.c (ffecom_char_enhance_arg_): Wrap the upper bound
(the PARM_DECL specifying the length of the CHARACTER*(*)
dummy arg) in a variable_size invocation, to prevent
dwarf2out.c crashing when compiling code with -g.
Sat Apr 18 05:03:21 1998 Craig Burley <burley@gnu.org>
* com.c (ffecom_check_size_overflow_): Ignore overflow
as well if dummy argument.
J"orn Rennecke [Thu, 14 May 1998 00:44:02 +0000 (00:44 +0000)]
reload.c (remove_replacements): New function.
* reload.c (remove_replacements): New function.
* reload.h (remove_replacements): Declare.
* reload1.c (choose_reload_regs): Disable some reloads that
belong to inherited reloads.
* Makefile.in (HOST_RTL): Add $(HOST_PREFIX)bitmap.o.
(rtl.o, emit-rtl.o): Add dependency on bitmap.h.
($(HOST_PREFIX_1)rtl.o): Likewise.
($(HOST_PREFIX_1)bitmap.o): New host object.
* emit-rtl.c (toplevel): Include bitmap.h.
(gen_rtx): Handle 't' and 'b' nodes.
* print-rtl.c (print_rtx): Handle printing NOTE_INSN_LIVE notes.
Print block number for block begin/end notes. Print 't' type
nodes as a pointer. Know that the 3rd argument of live range
start/stop notes is really a range_info rtx. If type is 'b', print
out argument as a bitmap.
* rtl.c: Include bitmap.c.
(copy_rtx): Copy tree nodes as is. Copy bitmaps if type is 'b'.
(note_insn_name): Add NOTE_INSN_RANGE_{START,END}, NOTE_INSN_LIVE.
* rtl.def (RANGE_LIVE): New node to hold live information while we
recalculate the basic blocks.
(RANGE_REG, RANGE_INFO): New rtl types for live range splitting.
(RANGE_VAR): New node, to hold information saved in symbol node for New
communicating live range information to the debug output functions.
* rtl.h (rtunion_def): Add rttree and rtbit fields.
(XBITMAP, XTREE): New accessor macros.
(NOTE_LIVE_INFO): Overload NOTE_SOURCE_FILE for NOTE_INSN_LIVE notes.
(NOTE_RANGE_INFO): Similarly for NOTE_INSN_RANGE_{START,END} notes.
(NOTE_BLOCK_LIVE_RANGE_BLOCK): Define.
(NOTE_INSN_RANGE_START, NOTE_INSN_RANGE_END, NOTE_INSN_LIVE): New notes.
(RANGE_LIVE_{BITMAP,ORIG_BLOCK}): New accessor macros.
(RANGE_REG_{SYMBOL,BLOCK}_NODE, RANGE_VAR_*): New accessor macros.
(RANGE_INFO_*): Likewise.
* sched.c (sched_analyze): Keep live range start/stop notes.
(unlink_other_notes): Likewise.
* haifa-sched.c (sched_analyze): Keep live range start/stop notes.
(unlink_other_notes): Likewise.
* tree.h (BLOCK_LIVE_RANGE_{START,END,VAR_FLAG}): New accessor macros.
(BLOCK_LIVE_RANGE_FLAG): Likewise.
(DECL_LIVE_RANGE_RTL): Likewise.
(struct tree_block): Add live_range_flag, live_range_var_flag,
live_range_start and live_range_end.
(struct tree_decl): Add live_range_rtl field.
* gengenrtl.c (type_from_format): Handle 'b' and 't'.
(accessor_from_format): Likewise.
Co-Authored-By: Jeffrey A Law <law@cygnus.com>
From-SVN: r19727
Jim Wilson [Wed, 13 May 1998 14:04:15 +0000 (14:04 +0000)]
Patch to fix g++.other/local1.C.
* varasm.c (make_decl_rtl): Revert April 1 change.
* alpha/alpha.h, alpha/win-nt.h, arm/arm.h, i386/unix.h, i960/i960.h,
m68k/linux.h, pa/pa.h, sparc/sparc.h, vax/vax.h (ASM_OUTPUT_MI_THUNK):
Get function name from the SYMBOL_REF in the DECL_RTL, not from
DECL_ASSEMBLER_NAME.
* i386/winnt.c (gen_stdcall_suffix): Comment for questionable use of
DECL_ASSEMBLER_NAME.
Kaveh R. Ghazi [Wed, 13 May 1998 12:40:39 +0000 (12:40 +0000)]
Warning fixes:
* Makefile.in (c-lang.o): Depend on c-tree.h, c-lex.h and toplev.h.
(c-lex.o): Depend on output.h.
(c-common.o): Likewise.
(stmt.o): Likewise.
(calls.o): Likewise.
(integrate.o): Depend on toplev.h.
(regclass.o): Depend on output.h.
(final.o): Depend on reload.h.
* c-common.c: Include output.h.
(check_format_info): Remove unused variable `integral_format'.
* c-decl.c (print_lang_decl): Mark parameters `file', `node' and
`indent' with ATTRIBUTE_UNUSED.
(print_lang_type): Likewise.
(maybe_build_cleanup): Likewise for parameter `decl'.
(copy_lang_decl): Likewise for parameter `node'.
* c-lang.c: Include c-tree.h, c-lex.h and toplev.h.
(lang_print_xnode): Mark parameters `file', `node' and `indent'
with ATTRIBUTE_UNUSED.
(lookup_interface): Likewise for parameter `arg'.
(is_class_name): Likewise.
(maybe_objc_check_decl): Likewise for parameter `decl'.
(maybe_objc_comptypes): Likewise for parameters `lhs', `rhs' and
`reflexive'.
(maybe_objc_method_name): Likewise for parameter `decl'.
(build_objc_string): Likewise for parameters `len' and `str'.
* c-lex.c: Include output.h.
* c-lex.h (position_after_white_space): Correct typo in prototype.
* c-tree.h (finish_file, c_expand_start_cond, c_expand_start_else,
c_expand_end_cond, init_iterators): Add prototypes.
* caller-save.c (set_reg_live): Mark parameters `reg' and `setter'
with ATTRIBUTE_UNUSED.
* calls.c: Include output.h.
* cccp.c (pipe_closed): Mark parameter `signo' with
ATTRIBUTE_UNUSED.
* combine.c: Move inclusion of expr.h to after insn-config.h.
* iris6.h (ASM_IDENTIFY_GCC, ASM_IDENTIFY_LANGUAGE): Don't define
as empty, rather define as ((void)0).
* sparc.c (sparc_check_64): Add braces around ambiguous `else'.
Add parentheses around assignment used as truth value.
* cplus-dem.c (squangle_mop_up): Change return type to void.
(internal_cplus_demangle): Remove unused parameter `options'.
All callers changed.
(cplus_demangle_opname): Remove function wide variable `int i' and
replace with `size_t i' at each location where it is used.
(cplus_demangle_opname): change type of `i' from int to size_t.
* cppexp.c (right_shift): Mark parameter `pfile' with
ATTRIBUTE_UNUSED.
* cpphash.c (cpp_lookup): Likewise.
(cpp_hash_cleanup): Likewise.
* cpplib.c (parse_name): Add a prototype and make it static.
(null_underflow): Mark parameter `pfile' with ATTRIBUTE_UNUSED.
(null_cleanup): Likewise for parameters `pbuf' and `pfile'.
(macro_cleanup): Likewise for parameter `pfile'.
(file_cleanup): Likewise.
* cpplib.h (cpp_reader_init, cpp_options_init, cpp_start_read,
cpp_read_check_assertion, skip_rest_of_line): Add prototypes.
* crtstuff.c (force_to_data, __CTOR_LIST__, force_to_data,
__DTOR_END__, __FRAME_END__): Mark with ATTRIBUTE_UNUSED.
* cse.c (cse_check_loop_start): Mark parameter `set' with
ATTRIBUTE_UNUSED.
* dbxout.c (flag_minimal_debug, have_used_extensions,
source_label_number): Move inside macro wrapper check against
defined (DBX_DEBUGGING_INFO) || defined (XCOFF_DEBUGGING_INFO).
* dwarf2out.c (gen_entry_point_die): Hide prototype and definition.
* except.h (doing_eh): Provide prototype.
* expr.c: Move inclusion of expr.h to after insn-config.h.
* final.c: Include reload.h.
(shorten_branches): Cast the first argument of bzero to char *.
* fix-header.c (cpp_print_containing_files): Mark parameter
`pfile' with ATTRIBUTE_UNUSED.
(cpp_fatal): Likewise.
* flow.c (find_basic_blocks_1): Cast the first argument of bzero
to char *.
* genattrtab.c (make_length_attrs): Change the type of variable
`i' from int to size_t.
(zero_fn): Mark parameter `exp' with ATTRIBUTE_UNUSED.
(one_fn): Likewise.
* genextract.c (main): When generating insn-extract.c, mark
variable `junk' with ATTRIBUTE_UNUSED.
* gengenrtl.c (gencode): When generating genrtl.c, cast the first
argument of bzero to char*.
* integrate.c: Include toplev.h.
* libgcc2.c: Wrap `struct exception_table' and
`find_exception_handler' in macro DWARF2_UNWIND_INFO.
* objc/Make-lang.in (objc-act.o): Depend on toplev.h.
* objc/objc-act.c: Include toplev.h.
(lang_print_xnode): Mark parameters `file', `node' and `indent'
with ATTRIBUTE_UNUSED.
(finish_protocol): Likewise for parameter `protocol'.
* output.h (declare_weak): Add prototype.
(decode_reg_name): Don't wrap with TREE_CODE macro.
(assemble_alias): Add prototype.
* regclass.c: Include output.h.
* reload.h (reloads_conflict): Add prototype.
* rtl.h (print_rtl_single, mark_elimiation, reg_class_subset_p,
output_func_start_profiler): Add prototypes.
* rtlanal.c (reg_set_p_1): Mark parameters `x' and `pat' with
ATTRIBUTE_UNUSED.
* scan-decls.c: Include scan.h.
* scan.h (recognized_function, recognized_extern): Add prototypes.
* stmt.c: Include output.h.
* toplev.c (error_for_asm, warning_for_asm): Remove prototypes.
(output_lang_identify): Hide prototype and definition.
(float_signal): Mark parameter `signo' with ATTRIBUTE_UNUSED.
(pipe_closed): Likewise.
* toplev.h (count_error, strip_off_ending, error_for_asm,
warning_for_asm): Add prototypes.
Kaveh R. Ghazi [Wed, 13 May 1998 10:00:46 +0000 (10:00 +0000)]
Warning patches:
* Makefile.in (lex.o): Depend on output.h.
* call.c (add_function_candidate): Remove unused variable `cand'.
(add_conv_candidate): Likewise.
(build_builtin_candidate): Likewise.
* cp-tree.h: Add prototype for `types_overlap_p'.
* decl.c (signal_catch): Mark parameter `sig' with ATTRIBUTE_UNUSED.
* decl2.c (merge_functions): Remove unused variables `tmp' and
`tempn'.
* error.c (expr_as_string): Mark parameter `v' with ATTRIBUTE_UNUSED.
(code_as_string): Likewise.
(language_as_string): Likewise.
(parm_as_string): Likewise.
(op_as_string): Likewise.
(assop_as_string): Likewise.
(cv_as_string): Likewise.
* lex.c: Include output.h.
* pt.c (type_unification): Cast first argument of `bzero' to a char*.
* search.c (dfs_no_overlap_yet): Mark parameter `t' with
ATTRIBUTE_UNUSED.
* tinfo.cc (__class_type_info::dcast): Change the type of variable
`i' from int to size_t.
* typeck.c (language_lvalue_valid): Mark parameter `exp' with
ATTRIBUTE_UNUSED.
J"orn Rennecke [Wed, 13 May 1998 00:53:59 +0000 (00:53 +0000)]
reload1.c (merge_assigned_reloads): Can merge RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even if...
* reload1.c (merge_assigned_reloads): Can merge
RELOAD_FOR_INPUT_ADDRESS and RELOAD_FOR_OTHER_ADDRESS even
if RELOAD_FOR_INPUT with the same reload_reg_rtx is present.
John Wehle [Mon, 11 May 1998 23:47:28 +0000 (23:47 +0000)]
varasm.c (assemble_variable): Compute the alignment of the data earlier so that both initialized and...
* varasm.c (assemble_variable): Compute the alignment of the data
earlier so that both initialized and uninitialized variables are
effected by DATA_ALIGNMENT.
* tm.texi (DATA_ALIGNMENT): Updated appropriately.
Jeff Law [Mon, 11 May 1998 23:00:52 +0000 (17:00 -0600)]
#
* mpw-* Delete. Not used.
* ltconfig, ltmain.sh: Update to libtool 1.2a.
* Makefile.in (CC_FOR_TARGET): Use $(TARGET_SUBDIR) when passing -B
for newlib directory.
(CXX_FOR_TARGET): Likewise.
Bring over from devo.
Jeff Law [Mon, 11 May 1998 23:00:48 +0000 (17:00 -0600)]
T
* mpw-* Delete. Not used.
* ltconfig, ltmain.sh: Update to libtool 1.2a.
* Makefile.in (CC_FOR_TARGET): Use $(TARGET_SUBDIR) when passing -B
for newlib directory.
(CXX_FOR_TARGET): Likewise.
Bring over from devo.
Jeff Law [Mon, 11 May 1998 23:00:44 +0000 (17:00 -0600)]
�
* mpw-* Delete. Not used.
* ltconfig, ltmain.sh: Update to libtool 1.2a.
* Makefile.in (CC_FOR_TARGET): Use $(TARGET_SUBDIR) when passing -B
for newlib directory.
(CXX_FOR_TARGET): Likewise.
Bring over from devo.
Jeff Law [Mon, 11 May 1998 23:00:43 +0000 (17:00 -0600)]
l
* mpw-* Delete. Not used.
* ltconfig, ltmain.sh: Update to libtool 1.2a.
* Makefile.in (CC_FOR_TARGET): Use $(TARGET_SUBDIR) when passing -B
for newlib directory.
(CXX_FOR_TARGET): Likewise.
Bring over from devo.
Jeff Law [Mon, 11 May 1998 22:49:29 +0000 (16:49 -0600)]
[multiple changes]
Thu Feb 12 16:29:01 1998 Ian Lance Taylor <ian@cygnus.com>
* getopt.h: Update to latest FSF version.
Fri Nov 7 10:34:09 1997 Rob Savoye <rob@darkstar.cygnus.com>
* libiberty.h: Add extern "C" { so it can be used with C++
programs.
Thu Aug 28 19:41:42 1997 Andrew Cagney <cagney@b1.cygnus.com>
* libiberty.h (dupargv): Add prototype.
Bring over from devo.
Jeff Law [Mon, 11 May 1998 22:29:42 +0000 (16:29 -0600)]
[multiple changes]
Sat Apr 11 22:43:17 1998 J. Kean Johnston <jkj@sco.com>
* mh-svsv5: New file - support for SCO UnixWare 7 / SVR5.
Thu Mar 26 01:54:25 1998 Geoffrey Noer <noer@cygnus.com>
* mh-cygwin32: stop configuring and building dosrel.
Bring over from devo.
Jeff Law [Mon, 11 May 1998 22:04:43 +0000 (16:04 -0600)]
[multiple changes]
Tue Mar 24 10:13:07 1998 Jason Merrill <jason@yorick.cygnus.com>
* std/bastring.cc (basic_string::copy): Mark const here, too.
1998-03-23 15:59 Ulrich Drepper <drepper@cygnus.com>
* std/bastring.h (basic_string::copy): Mark copy function as const.
Reported by Scott Schurr <scotts@ims.com>.
Bring over from devo.
* alpha.h (PRINT_OPERAND_PUNCT_VALID_P): Add '`'.
* alpha.c (print_operand): Handle it.
* alpha.md (fix_truncdfsi2, fix_truncsfsi2): New patterns and
related define_splits. Also add peepholes for SImode reload
plus sign_extend lossage.
Mark Mitchell [Mon, 11 May 1998 07:25:25 +0000 (07:25 +0000)]
call.c (add_template_candidate): Adjust for changes to fn_type_unification.
* call.c (add_template_candidate): Adjust for changes to
fn_type_unification.
(add_template_candidate_real): Likewise.
(add_template_conv_candidate): Likewise.
(build_user_type_conversion_1): Likewise.
(build_new_function_call): Likewise.
(build_object_call): Likewise.
(build_new_op): Likewise.
(build_new_method_call): Likewise.
* class.c (instantiate_type): Likewise.
* cp-tree.h (unification_kind_t): New type.
(fn_type_unification): Adjust prototype.
(type_unificaiton): Likewise.
* pt.c (UNIFY_ALLOW_NONE): New macro.
(UNIFY_ALLOW_MORE_CV_QUAL): Likewise.
(UNIFY_ALLOW_LESS_CV_QUAL): Likewise.
(UNIFY_ALLOW_DERIVED): Likewise.
(unify): Change prototype.
(maybe_adjust_types_for_deduction): New function.
(check_cv_quals_for_unify): Likewise.
(determine_specialization): Adjust.
(fn_type_unification): Likewise.
(type_unification): Likewise.
(type_unification_real): Likewise. Use
maybe_adjust_types_for_deduction. Fix mishandling of
back-unification of template functions passed as arguments. Pass
appropriate combination of UNIFY_ALLOW_* to unify.
(unify): Remove unused NTPARMS parameter. Use
check_cv_quals_for_unify. Remove bogus code that allowed
too-generous unification in order to adhere more closely to standard.
(get_bindings_real): Adjust.
(get_class_bindings): Likewise.
* method.c (build_overload_identifier): Only use the innermost
template arguments when mangling.
* pt.c (tsubst_template_argument_vector): New function.
(complete_template_args): Deal with the situation where the
extra_args contain more than one level of arguments.
(lookup_template_class): Deal with member template classes, which
may have more than one level of arguments.
(tsubst): Don't tsbust into the TREE_TYPE of an IDENTIFIER_NODE.
Improve handling of member template classes. Use
DECL_PRIMARY_TEMPLATE instead of inline expansion. Use
tsubst_template_argument_vector where appropriate.
(regenerate_decl_from_template): Break out from ...
(instantiate_decl): Here.
Kaveh R. Ghazi [Mon, 11 May 1998 06:50:51 +0000 (06:50 +0000)]
genattr.c: Include stdarg.h/varargs.h.
* genattr.c: Include stdarg.h/varargs.h. Change function
`fatal' to use variable arguments instead of faking it with
integer parameters. Provide a prototype which also
checks the format specifiers using ATTRIBUTE_PRINTF_1.
* genattrtab.c: Likewise.
* gencodes.c: Likewise.
* genconfig.c: Likewise.
* genemit.c: Likewise.
* genextract.c: Likewise.
* genflags.c: Likewise.
* genopinit.c: Likewise.
* genpeep.c: Likewise.
* genrecog.c: Likewise.
* genoutput.c: Likewise. Similarly for function `error'.