rth [Tue, 3 Feb 1998 20:13:42 +0000 (20:13 +0000)]
* config-lang.in: Remove references to runtime/.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17635
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Feb 1998 19:57:57 +0000 (19:57 +0000)]
* lex.c (file_name_nondirectory): Also check for '/'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17634
138bc75d-0d04-0410-961f-
82ee72b054a4
davem [Tue, 3 Feb 1998 15:06:43 +0000 (15:06 +0000)]
Test commit.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17624
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 3 Feb 1998 14:49:59 +0000 (14:49 +0000)]
More tweaks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17623
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 3 Feb 1998 09:46:44 +0000 (09:46 +0000)]
Change lawcs.utah.edu references to law@cygnus.com
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17615
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 3 Feb 1998 09:44:23 +0000 (09:44 +0000)]
put me down for caller-save.c which I largely rewrote a few years ago...
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17614
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Feb 1998 01:33:18 +0000 (01:33 +0000)]
new
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17612
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 3 Feb 1998 01:33:09 +0000 (01:33 +0000)]
* parse.y (primary): Deal with statement-expressions in
templates.
* pt.c (tsubst_copy): Handle BIND_EXPR.
* tree.c (mapcar): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17611
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 3 Feb 1998 00:09:57 +0000 (00:09 +0000)]
* jump.c (jump_optimize): Fix first arg to modified_in_p in
previous change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17610
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 2 Feb 1998 23:44:19 +0000 (23:44 +0000)]
* call.c (add_template_candidate_real): Pass extra parameter to
fn_type_unification.
* cp-tree.h (fn_type_unification): Add parameter.
* pt.c (fn_type_unification): Add additional parameter to deal with
static member functions.
(get_bindings): Deal with static member functions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17609
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 23:03:30 +0000 (23:03 +0000)]
Note location of comp.std.c++ FAQ
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17608
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 21:07:43 +0000 (21:07 +0000)]
Add Andrew.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17604
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 2 Feb 1998 19:28:57 +0000 (19:28 +0000)]
* expr.c (expand_builtin_setjmp): Accept two new arguments for
the labels to branch to on first and subsequent executions. Don't
play with __dummy. Rename `setjmp' insn to `builtin_setjmp_setup',
and provide it with the jmp_buf. Use only one of
`builtin_setjmp_receiver' or `nonlocal_goto_receiver',
and provide the former with the target label.
(expand_builtin) [BUILTIN_SETJMP]: Generate a label for use by setjmp.
(expand_builtin) [BUILTIN_LONGJMP]: Split out to ...
(expand_builtin_longjmp): ... here. Recognize a `builtin_longjmp'
insn to replace all of the normal nonlocal_goto code. Don't play
with __dummy. Correct arguments to nonlocal_goto.
* expr.h (expand_builtin_setjmp): Update prototype.
* except.c (start_dynamic_handler): When using builtin_setjmp,
generate more accurate flow information.
* alpha.md (nonlocal_goto_receiver_osf): Delete.
(nonlocal_goto_receiver_vms): Rename to nonlocal_goto_receiver.
(builtin_longjmp, builtin_setjmp_receiver): New.
* sparc.md (update_return): Disambiguate unspec number.
(nonlocal_goto): Rearrange arguments to match caller in except.c.
(builtin_setjmp_setup): Rename from setjmp. Match and ignore the
jmp_buf operand.
* mips.md (nonlocal_goto_receiver, builtin_setjmp_receiver): Remove.
(builtin_setjmp_setup*, builtin_longjmp): New.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17602
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Mon, 2 Feb 1998 16:44:24 +0000 (16:44 +0000)]
Patch from John Carr to fix some 32/64 bit cross compiler bugs.
* mips.md: Change gen_rtx (CONST_INT) to GEN_INT.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17601
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 15:53:17 +0000 (15:53 +0000)]
Various updates.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17600
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Mon, 2 Feb 1998 13:09:22 +0000 (13:09 +0000)]
Remove last of bytecode support.
* vmsconfig.com: Remove bytecode references.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17599
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 2 Feb 1998 11:41:39 +0000 (11:41 +0000)]
* cp-tree.h (DECL_NONSTATIC_MEMBER_FUNCTION_P): New macro.
(revert_static_member_fn): Declare.
* decl.c (revert_static_member_fn): Remove declaration. Change
linkage from internal to external.
(cp_finish_decl): Deal with virtual functions in classes local to
template functions.
* decl2.c (finish_file): Don't forget to emit increment/decrement
expressions in initializers for file-scope variables.
* parse.y (typename_sub2): If the typename doesn't names a
template, rather than a type, issue an error message.
* pt.c (check_explicit_specialization): Handle specializations of
static member functions.
(coerce_template_parms): Handle offset references to lists of
member functions.
* search.c (note_debug_info_needed): Don't crash when handed a
type which is being defined.
* typeck.c (complete_type): Don't crash when handed NULL_TREE;
that can happen with some illegal code.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17598
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 2 Feb 1998 11:09:23 +0000 (11:09 +0000)]
* configure.in: Update F2C_INTEGER and F2C_LONGINT tests
for the new placement in the hierarchy.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17597
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 10:26:33 +0000 (10:26 +0000)]
* dwarf2out.c (dwarf2out_frame_init): Undo last change, so that
-fno-sjlj-exceptions works for a target that defines
DWARF2_UNWIND_INFO as zero.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17596
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 10:23:22 +0000 (10:23 +0000)]
* regmove.c (fixup_match_1): Undo last change which removed some
"useless" code, and add a comment explaining this.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17595
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 09:46:21 +0000 (09:46 +0000)]
* mips.c (mips_expand_prologue): Change uses of TARGET_64BIT
to TARGET_LONG64.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17594
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 09:37:18 +0000 (09:37 +0000)]
* makefile.vms: Remove bytecode references.
Create genrtl files.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17593
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 09:33:14 +0000 (09:33 +0000)]
Tweak again.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17592
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 01:09:04 +0000 (01:09 +0000)]
* jump.c (jump_optimize): Allow conditional loading of floating point
constants and constants from memory. Reinstalled modified_in_p tests.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17591
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 00:37:25 +0000 (00:37 +0000)]
* loop.c (get_condition): Handle sign-extended constants.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17590
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 00:23:13 +0000 (00:23 +0000)]
* expr.c (emit_push_insn): Add code to use movstrti if present.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17589
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 00:21:46 +0000 (00:21 +0000)]
* expr.c (emit_push_insn): Use same max-move-amount for movstrhi
and movstrqi as in emit_block_move ().
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17588
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 00:17:02 +0000 (00:17 +0000)]
Improve movstrXX documentation.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17587
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 2 Feb 1998 00:04:13 +0000 (00:04 +0000)]
Various fixes for -Wall problems from Kaveh. See ChangeLog for details.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17586
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 23:08:28 +0000 (23:08 +0000)]
* config/m68k/x-next: Remove /NextDeveloper/Headers from
the directories to fixinclude - /usr/include is a link
to it and hence its contents are fixed by default.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17585
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 23:06:22 +0000 (23:06 +0000)]
Fix typo in hj's ChangeLog entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17584
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 13:14:01 +0000 (13:14 +0000)]
* rs6000/linux.h: define JUMP_TABLES_IN_TEXT_SECTION
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17583
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 12:44:52 +0000 (12:44 +0000)]
* iostream.cc (istream::operator>>(long double&))
[!_G_HAVE_LONG_DOUBLE_IO]: Scan value into separate variable, in
case long double is bigger than double.
(ostream::operator<<(double)) [_G_HAVE_PRINTF_FP]: Fix order of
initializers of struct printf_info to match declaration order,
to work around g++ bug.
(ostream::operator<<(long double)) [_G_HAVE_PRINTF_FP]: Likewise.
* gen-params: Add missing quotes. Avoid useless use of command
substitution.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17582
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 12:38:27 +0000 (12:38 +0000)]
* config/linux.mt: Don't define _PTHREADS, but define
_IO_MTSAFE_IO.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17581
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 12:29:15 +0000 (12:29 +0000)]
* filebuf.cc (filebuf::open): Call _IO_file_open if
_G_HAVE_IO_FILE_OPEN is 1.
* libio.h (_IO_fpos64_t, _IO_off64_t): Defined if
_G_IO_IO_FILE_VERSION == 0x20001.
* libioP.h (_IO_file_open): New declaration.
* libio.h (_IO_FILE, _IO_stdin_, _IO_stdout_, _IO_stderr_,
_IO_seekoff, _IO_seekpos): Add support for libio in egcs 2.1.
* libioP.h (_IO_seekoff_t, _IO_seekpos_t, _IO_seek_t,
_IO_seekoff, _IO_seekpos, _IO_default_seekoff,
_IO_default_seekpos, _IO_default_seek, _IO_file_seekoff,
_IO_file_seek, _IO_str_seekoff, _IO_pos_BAD, _IO_pos_as_off,
_IO_pos_0): Ditto.
* streambuf.h (streamoff, streampos): Ditto.
* gen-params (__extension__): Use only if gcc version >= 2.8.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17580
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 12:20:13 +0000 (12:20 +0000)]
* dbz/dbz.c (putconf): Handle systems which use "long long" as type
for "off_t".
* dbz/dbzmain.c (mkfiles): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17579
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 12:01:18 +0000 (12:01 +0000)]
* cccp.c (main): Predefine __VMS_VER on VMS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17578
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 11:47:59 +0000 (11:47 +0000)]
* expr.c (get_inner_reference): Use sbitsizetype for type sizes.
* fold-const.c (size_int): Replace with
(size_int_wide).
(make_bit_field_ref): Use bitsize_int for bit position.
* stor-layout.c (sizetype): Delete.
(sizetype_tab, sbitsizetype, ubitsizetype): Declare.
(layout_record, layout_union, layout_type):
Use bitsize_int for bit size.
(set_sizetype): New function.
(make_signed_type, make_unsigned_type): Use it.
* c-decl.c (init_decl_processing): Likewise.
* tree.h (size_int): Don't delcare, #define.
(size_int_wide, sizetype_tab, sbitsize, ubitsize): Declare.
(set_sizetype): Declare.
(bitsize_int, size_int_2, BITS_PER_UNIT_LOG, sizetype, bitsizetype):
Define.
* c-typeck.c (c_sizeof, c_sizeof_nowarn, c_size_in_bytes):
Convert result to sizetype.
(really_start_incremental_init, push_init_level):
Set type of constructor_bit_index to sbitsizetype.
(push_init_level): Use unsigned arithmetic to determine padding.
(output_init_element): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17577
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 11:45:10 +0000 (11:45 +0000)]
* decl.c (init_decl_processing): Use set_sizetype.
* decl2.c (sizetype): Don't declare.
* typeck.c (c_sizeof): Convert result of *_DIV_EXPR to sizetype.
(c_sizeof_nowarn, build_binary_op_nodefault): Likewise.
(build_component_addr, unary_complex_lvalue): Likewise.
* rtti.c (expand_class_desc): Likewise.
* class.c (get_vfield_offset): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17576
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 11:43:05 +0000 (11:43 +0000)]
* com.c (ffecom_tree_canonize_ptr_): Place bitsizetype typed expr
as first agument in MULT_EXPR.
Use bitsize_int (0L, 0L) as zero for bitsizes.
(ffecom_tree_canonize_ref_):
Use bitsize_int (0L, 0L) as zero for bitsizes.
(ffecom_init_0): Use set_sizetype.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17575
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 11:36:50 +0000 (11:36 +0000)]
Remove unnecessary file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17574
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 02:31:03 +0000 (02:31 +0000)]
* combine.c (simplify_shift_const): Fix typo in last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17573
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 01:51:20 +0000 (01:51 +0000)]
(
* config.table (vxworks configs): Default to VxWorks 5.x, as that is
the currently shipping OS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17572
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 01:51:19 +0000 (01:51 +0000)]
�
* config.table (vxworks configs): Default to VxWorks 5.x, as that is
the currently shipping OS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17571
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 01:49:32 +0000 (01:49 +0000)]
* combine.c (simplify_shift_const): (lshiftrt (truncate (lshiftrt)))
is (truncate (lshiftrt)).
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17570
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 01:41:24 +0000 (01:41 +0000)]
* Makefile.in (TARGET_CONFIGDIRS): Add libf2c.
(ALL_TARGET_MODULES, CONFIGURE_TARGET_MODULES): Similarly
(CHECK_TARGET_MODULES, INSTALL_TARGET_MODULES): Similarly
(CLEAN_TARGET_MODULES): Similarly
(all-target-libf2c): Add dependences.
* configure.in (target_libs): Add libf2c.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17569
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 01:37:08 +0000 (01:37 +0000)]
* Previous contents of gcc/f/runtime moved into toplevel
"libf2c" directory.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17568
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 01:30:56 +0000 (01:30 +0000)]
* runtime directory -- moved into "libfc2" in the toplevel
directory.
* Make-lang.in: Remove all runtime related stuff.
Starting libfc2 rearrangement.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17567
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 01:22:52 +0000 (01:22 +0000)]
No longer relavent.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17566
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Sun, 1 Feb 1998 01:14:40 +0000 (01:14 +0000)]
* alpha.c (alpha_expand_unaligned_load): Use expand_binop properly.
Make sure result winds up in TGT.
(alpha_expand_unaligned_store): Use expand_binop properly. Allow
src to be other than DImode.
(alpha_expand_unaligned_load_words): Tidy. Take an offset argument.
(alpha_expand_unaligned_store_words): Likewise.
(alpha_expand_block_move): Use REGNO_POINTER_ALIGN. Restructure so
that source and destination are separately optimized for alignment.
(alpha_expand_block_clear): Use REGNO_POINTER_ALIGN.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17565
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 00:54:27 +0000 (00:54 +0000)]
* mips.md (adddi3_internal_2): Be consistent with adddi3 expander
with handling of -32768.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17564
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 00:48:06 +0000 (00:48 +0000)]
* aclocal.m4 (GCC_NEED_DECLARATION): Modify macro to accept a
shell variable argument instead of only hard coded functions.
(GCC_NEED_DECLARATIONS): New macro to accept multiple functions.
* configure.in: Collapse multiple calls to AC_CHECK_FUNCS into one
call. Collapse multiple calls to GCC_NEED_DECLARATION into one
call to GCC_NEED_DECLARATIONS (new macro.) Check if we need
declarations for bcopy, bcmp and bzero.
* acconfig.h: Add stubs for bcopy, bcmp and bzero declarations.
* gansidecl.h: If we have bcopy but don't declare it, then do so.
Likewise for bcmp and bzero. Only define macros for bcopy, bcmp,
bzero, index and rindex if they aren't already present.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17563
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 1 Feb 1998 00:41:14 +0000 (00:41 +0000)]
* libU77/configure.in (getlogin,getgid,getuid, kill,link,ttyname):
Check.
* libU77/config.h.in (HAVE_GETLOGIN, HAVE_GETGID, HAVE_GETUID,
HAVE_KILL, HAVE_LINK, HAVE_TTYNAME): New defs.
* libU77/getlog_.c: Conditionalize for target platform. Set errno
to ENOSYS if target libc doesn't have the function.
* libU77/getgid_.c: Likewise.
* libU77/getuid_.c: Likewise.
* libU77/kill_.c: Likewise.
* libU77/link_.c: Likewise.
* libU77/ttynam_.c: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17562
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sat, 31 Jan 1998 10:26:48 +0000 (10:26 +0000)]
* toplev.c (close_dump_file): Wrap function prototype for
argument "func" in PROTO.
(dump_rtl): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17561
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Fri, 30 Jan 1998 23:34:15 +0000 (23:34 +0000)]
Fri Jan 30 22:30:39 1998 John Carr <jfc@mit.edu>
* sparc.c (sparc_override_options): Make v8plus and ultrasparc set
MASK_V8PLUS.
(output_function_epilogue): Omit epilogue if nothing drops through.
(output_move_double): Supress int ldd usage on ultrasparc and v9.
(registers_ok_for_ldd_peep): Likewise.
(print_operand): Supress b,a on ultrasparc. Let Y accept a constant.
(ultrasparc_adjust_cost): New function.
(sparc_issue_rate): New function.
* sparc.h (MASK_VIS, TARGET_VIS): New
(MASK_V8PLUS, TARGET_V8PLUS): New.
(TARGET_HARD_MUL32, TARGET_HARD_MUL): New.
(TARGET_SWITCHES): Add vis and v8plus.
(REG_CLASS_FROM_LETTER): Accept d and b for VIS.
(REGISTER_MOVE_COST): FP<->INT move cost 12 for ultrasparc.
(RTX_COSTS): Use TARGET_HARD_MUL
(ADJUST_COST): Call ultrasparc_adjust_cost.
(ISSUE_RATE): New.
* sparc.md (attr type): Add sload, fpmove, fpcmove. Adjust users
of load & fp appropritely.
(supersparc function units): Adjust for Haifa.
(ultrasparc function units): Likewise.
(get_pc_via_rdpc): All v9, not just arch64.
(movdi_v8plus, movdi_v8plus+1): New.
(adddi3_sp32+1): New.
(subdi3_sp32+1): New.
(movsi_insn, movsf_const_insn, movdf_const_insn): Know VIS.
(addsi3, subsi3, anddi3_sp32, andsi3, and_not_di_sp32): Likewise.
(and_not_si, iordi3_sp32, iorsi3, or_not_di_sp32, or_not_si): Likewise.
(xorsi3_sp32, xorsi3, xor_not_di_sp32, xor_not_si): Likewise.
(one_cmpldi2_sp32, one_cmplsi2): Likewise.
(ldd peepholes): Suppress for v9.
(return_adddi): Kill redundant test. Arg1 may be arith_operand.
(return_subsi): Revmove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17560
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Fri, 30 Jan 1998 18:31:34 +0000 (18:31 +0000)]
patch from jfc to improve aliasing/scheduling
* mips.c (save_restore_insns): Set RTX_UNCHANGING_P in register
save/restore MEM rtl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17559
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Fri, 30 Jan 1998 12:04:34 +0000 (12:04 +0000)]
new
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17558
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 30 Jan 1998 08:09:16 +0000 (08:09 +0000)]
Tweak last entry.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17557
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 30 Jan 1998 08:08:31 +0000 (08:08 +0000)]
* configure.in: Check for declaration of abort.
* acconfig.h: Corresponding changes.
* toplev.c: Use NEED_DECLARATION_ABORT to determine if abort should
be declared.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17556
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 30 Jan 1998 08:04:59 +0000 (08:04 +0000)]
Forgot to commit these...
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17555
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 29 Jan 1998 19:25:26 +0000 (19:25 +0000)]
* genattrtab.c (optimize): Define in case PRESERVE_DEATH_INFO_REGNO_P
uses it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17554
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 29 Jan 1998 11:07:01 +0000 (11:07 +0000)]
new
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17553
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 29 Jan 1998 11:06:22 +0000 (11:06 +0000)]
* pt.c (convert_nontype_argument): Move check for is_overloaded_fn
early to avoid bogus error. Handle overloaded function
names provided as template arguments correctly.
(coerce_template_parms): Don't mishandle overloaded functions when
dealing with template template parameters.
(lookup_template_class): Issue an error message, rather than
crashing, when the TYPE_DECL provided is not a template type.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17552
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 29 Jan 1998 10:21:37 +0000 (10:21 +0000)]
new
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17551
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 29 Jan 1998 09:27:59 +0000 (09:27 +0000)]
Bump for snapshot
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17549
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 29 Jan 1998 09:14:37 +0000 (09:14 +0000)]
* configure.in: Check for atoq and atoll.
* rtl.c (read_rtx): Use HAVE_ATOLL and HAVE_ATOQ to select the
proper routine for converting ascii into long long values.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17548
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 29 Jan 1998 09:04:10 +0000 (09:04 +0000)]
* cccp.c (SYS$SEARCH, SYS$PARSE): Write as upper-case.
* vmsconfig.com: Remove bytecode references.
* alpha/vms.h (PREFIX): Define.
* alpha/vms.h (ASM_OUTPUT_ALIGNED_COMMON): Remove.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17547
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 29 Jan 1998 00:47:10 +0000 (00:47 +0000)]
* am-alpha.h: Don't include alloca for OPEN_VMS.
* alpha/xm-vms.h (HAVE_CPP_STRINGIFY): Define.
* alpha/xm-vms.h (INCLUDE_DEFAULTS): Define.
(GCC_INCLUDE_DIR): Define
* make-cc.com, make-cccp.com, make-cc1.com: Removed.
* makefile.vms: New file.
* alpha/vms.h (CPP_PREDEFINES): Remove -Dalpha.
* alpha.c (output_prolog): Output '.name' directive
for minimal traceback information.
* alpha.c (output_prolog): Don't prepend entry point symbols
with '$' on OPEN_VMS.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17546
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Thu, 29 Jan 1998 00:08:53 +0000 (00:08 +0000)]
* class.c (instantiate_type): Don't just return a known type if
it's wrong.
* class.c (instantiate_type): Remove handling of FUNCTION_DECL
since that code could never be reached.
* error.c (dump_decl): Avoid aborting in the midst of printing an
error message about an illegal template declaration.
* parse.y (structsp): Print an error message, rather than crashing,
when a class-head does not name a class.
* pt.c (convert_nontype_argument): Allow REAL_TYPE and COMPLEX_TYPE
template arguments as a g++ extension.
* cp-tree.def (ALIGNOF_EXPR): New tree code.
* decl2.c (grok_alignof): If processing_template_decl, just store
the expression.
* typeck.c (c_alignof): Likewise.
* decl2.c (build_expr_from_tree): Handle ALIGNOF_EXPR.
* error.c (dump_expr): Likewise.
* pt.c (tsubst_copy): Likewise.
* tree.c (cp_tree_equal): Likewise.
* pt.c (uses_template_parms): Correctly determine whether or not a
SIZEOF_EXPR/ALIGNOF_EXPR uses template parameters so that constant
folding can be done.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17545
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 23:25:15 +0000 (23:25 +0000)]
* rtl.c (read_rtx): Use atol/atoq based upon disposition of
HOST_WIDE_INT.
* genattrtab.c (write_test_expr): Use HOST_WIDE_INT_PRINT_DEC
as needed.
* genemit.c (gen_exp): Likewise.
* genpeep.c (match_rtx): Likewise.
* genrecog.c (write_tree_1): Likewise.
* c-lex.c (yyprint): Use proper format string based upon
disposition of HOST_BITS_PER_WIDE_INT.
(yylex): Put casts in right place for args to build_int_2.
* combine.c: Fix typos in Jan27 changes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17544
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 23:06:58 +0000 (23:06 +0000)]
* i386/freebsd.h (LIB_SPEC): Correctly handle -shared, -p and friends.
(LINK_SPEC): Likewise.
(STARTFILE_SPEC): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17543
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 19:21:54 +0000 (19:21 +0000)]
* rtlanal.c (dead_or_set_regno_p): Ignore REG_DEAD notes after
reload completes.
* genattrtab.c (reload_completed): Define.
* m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Remove obsolete
comments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17542
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 19:09:41 +0000 (19:09 +0000)]
* reload.c (push_reload): If WORD_REGISTER_OPERATIONS, reload the
SUBREG_REG if the word count is unchanged, also in the input reload
case. Disable non-applicable sanity checks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17541
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 19:06:58 +0000 (19:06 +0000)]
* config/t-svr4 (TARGET_LIBGCC2_CFLAGS): Add -fPIC.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17540
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 19:04:40 +0000 (19:04 +0000)]
* i386/t-cygwin32 (LIMITS_H_TEST, LIBGCC2_INCLUDES): Define.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17539
138bc75d-0d04-0410-961f-
82ee72b054a4
bothner [Wed, 28 Jan 1998 17:07:24 +0000 (17:07 +0000)]
d
* dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
is a TREE_VEC before trying to use it for baseclasses.
(Chill uses the same field for a different purpose.)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17535
138bc75d-0d04-0410-961f-
82ee72b054a4
bothner [Wed, 28 Jan 1998 17:07:23 +0000 (17:07 +0000)]
�
* dbxout.c (dbxout_type): For a RECORD_TYPE, check that TYPE_BINFO
is a TREE_VEC before trying to use it for baseclasses.
(Chill uses the same field for a different purpose.)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17534
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Jan 1998 11:51:38 +0000 (11:51 +0000)]
new
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17533
138bc75d-0d04-0410-961f-
82ee72b054a4
bothner [Wed, 28 Jan 1998 11:46:37 +0000 (11:46 +0000)]
*** empty log message ***
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17532
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Jan 1998 11:43:39 +0000 (11:43 +0000)]
* cp-tree.h (grok_enum_decls): Remove type parameter.
* decl.c (grok_enum_decls): Likewise.
* decl2.c (grok_x_components): Call grok_enum_decls
unconditionally, since it will do nothing if there is no
current_local_enum. Use the new calling sequence.
* pt.c (tsubst_enum): Use the new calling sequence for
grok_enum_decls.
* decl.c (start_function): Make member functions of local classes
in extern inline functions have comdat linkage here...
(grokdeclarator): Rather than here.
* pt.c (convert_nontype_argument): Use decl_constant_value.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17531
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Jan 1998 10:58:52 +0000 (10:58 +0000)]
new
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17530
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 09:48:01 +0000 (09:48 +0000)]
Add missing ChangeLog entry
Add missing ChangeLog entry
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17529
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 09:31:48 +0000 (09:31 +0000)]
* Makefile.in (BASE_FLAGS_TO_PASS): Remove passing $(local_prefix)
here as it is not defined in the toplevel Makefile.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17528
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 09:30:03 +0000 (09:30 +0000)]
* stdio/configure.in, tests/configure.in: Update with yesterday's
toplevel configure.in changes.
* testsuite/cofnigure.in: Likewise.
* config.shared: Fix typo in yesterday's changes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17527
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Jan 1998 09:29:07 +0000 (09:29 +0000)]
* tests/configure.in, testsuite/configure.in: Update with yesterday's
toplevel configure.in changes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17526
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 23:04:34 +0000 (23:04 +0000)]
More comment tweaks.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17525
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:25:59 +0000 (22:25 +0000)]
* configure.in (package_makefile_rules_frag): New variable
which is used in the call to config.shared; redirect file descriptor 2
to ${package_makefile_rules_frag}.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17524
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:25:13 +0000 (22:25 +0000)]
* config.shared: Emit everything which needs to be re-definable
via file descriptor 1; the generic stuff is emitted using redirection
onto fd 2.
* configure.in (package_makefile_rules_frag): New variable
which is used in the call to config.shared; redirect file descriptor 2
to ${package_makefile_rules_frag}.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17523
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:23:50 +0000 (22:23 +0000)]
* configure (package_makefile_rules_frag): New variable, which names
a file with generic rules, ...
Change comment to mention we now have FIVE parts.
* configure: Undo last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17522
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:18:11 +0000 (22:18 +0000)]
Fix typo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17521
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:15:40 +0000 (22:15 +0000)]
* config.guess: More accurate determination of HP processor types.
* config.sub: More accurate determination of HP processor types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17520
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:15:04 +0000 (22:15 +0000)]
* config.sub: More accurate determine of HP processor types.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17519
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:11:55 +0000 (22:11 +0000)]
d
* c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
prototype for `handle_sysv_pragma', and make it static. Add
parentheses around assignment used as truth value.
* combine.c (combine_instructions): Protect variable `prev' with
macro HAVE_cc0.
(can_combine_p): Protect variable `link' with AUTO_INC_DEC.
(extract_left_shift): Add parentheses around operand of &.
(merge_outer_ops): Avoid an empty body in an else-statement.
(gen_rtx_combine): Remove unused variable `i'.
* sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
function monstartup `void'. Likewise for internal_mcount. Add
`static void' prototype for moncontrol. Reconcile sprintf format
vs. args.
* sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
Make return type of function_arg_slotno explicitly `int'.
(reg_unused_after): Add parentheses around assignment used as
truth value.
(save_regs): Add explicit braces to avoid ambiguous `else'.
(function_arg_slotno): Add parentheses around && within ||.
(function_arg_pass_by_reference): Likewise.
(sparc_flat_output_function_prologue): Reconcile fprintf format
vs. args.
* svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
assignment used as truth value.
* cplus-dem.c: Include <stdlib.h>.
(demangle_signature): Avoid an empty body in an else-statement.
(do_type): Remove unused variable `lvl'.
* cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
Include <string.h>/<strings.h>.
(cpp_lex): Remove unused variable `namelen'.
(cpp_lex): Explicitly declare `num_chars' as an int.
* cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
<unistd.h> instead. Explicitly declare is_system_include
returning int.
(make_assertion): Remove unused variable `kt'.
(cpp_expand_to_buffer): Hide variable `obuf'.
(output_line_command): Remove unused variables, `line_end',
`line_cmd_buf' and `len'.
(macarg): Remove unused variable `arg_start'.
(special_symbol): Remove unused variable `i'. Add parentheses
around assignment used as truth value.
(do_include): Remove unused variables `pcfname' and `retried',
hide `pcf' and `pcfbuflimit'.
(do_line): Remove unused variable `i'.
(finclude): Hide variable `missing_newline'.
(cpp_handle_options): Remove unused variable `j'.
(read_token_list): Remove unused variable `eofp'.
(cpp_error_with_line): Remove unused variable `i'.
(cpp_warning_with_line): Likewise.
(cpp_pedwarn_with_line): Explicitly declare `column' as int.
(cpp_error_from_errno): Remove unused variable `i'.
* cse.c (invalidate): Add parentheses around assignment used as
truth value.
(find_best_addr): Move declaration of variable `our_cost' inside
the conditional macro where its used.
(fold_rtx): Avoid an empty body in an if-statement.
(cse_insn): Wrap variables `this_insn_cc0_mode' and
`this_insn_cc0' in macro HAVE_cc0.
* dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
(ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
(output_uleb128): Likewise.
(output_sleb128): Likewise.
(output_cfi): Likewise.
(output_call_frame_info): Remove unused variables `j', `fde_size'
and `fde_pad'.
(comp_unit_has_inlines): Hide declaration as per rest of file.
(size_of_line_prolog): Correct typo in prototype.
(add_arange): Likewise.
(output_aranges): Likewise.
(add_name_and_src_coords_attributes): Likewise.
(gen_array_type_die): Likewise.
(gen_inlined_subroutine_die): Likewise.
(equate_decl_number_to_die): Remove unused variable `i'.
(print_die): Reconcile format vs. args in fprintf's.
(print_dwarf_line_table): Likewise.
(output_die): Likewise.
(output_line_info): Likewise.
(add_subscript_info): Avoid an empty body in an else-statement.
(gen_subprogram_die): Remove unused variable `fp_loc'.
* dwarfout.c: Explicitly declare `next_pubname_number' as int.
Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
macro. Protect `src_coords_attribute' prototype with
DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
prototype as in the rest of the file. Likewise for
`output_pointer_type_die' and `output_reference_type_die'. Remove
prototype for `type_of_for_scope'.
(output_unsigned_leb128): Reconcile format vs. args in fprintf.
(type_attribute): Add explicit braces to avoid ambiguous `else'.
* final.c: Include <stdlib.h> and <string.h>/<strings.h>.
(shorten_branches): Protect declaration of tmp_length with
SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
(profile_function): Protect declaration of `sval' and `cxt'
variables with appropriate macros.
(final_scan_insn): Likewise for `note' variable. Add explicit
braces to avoid empty body in an if-statement.
(output_asm_insn): Move variable `i' inside macro conditional
where it is used. Add parentheses around assignment used as truth
value.
(asm_fprintf) Likewise, likewise.
* fix-header.c (main): Remove unused variable `done'. Protect
declaration of `i' with FIXPROTO_IGNORE_LIST.
* pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
* print-rtl.c (print_inline_rtx): Explicitly declare the parameter
`ind'.
* profile.c: Include <string.h>/<strings.h>.
(instrument_arcs): Remove unused variables `note', `inverted',
`zero' and `neg_one'.
(branch_prob): Avoid empty body in an if-statement.
* regclass.c: Include <stdlib.h>.
(reg_alternate_class): Explicitly declare parameter `regno'.
* regmove.c (regmove_optimize): Remove unused variable `p'. Add
parentheses around assignment used as truth value.
(find_matches): Remove unused variables `output_operand' and
`matching_operand'.
(fixup_match_1): Remove statement with no effect: "if (0) ;".
* scan.c (sstring_append): Explicitly declare `count' as int.
(scan_string): Explicitly declare parameter `init' as int.
* sched.c: Include <stdlib.h>.
(BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
(rank_for_schedule): Add parentheses around assignment used as
truth value.
(schedule_block): Likewise.
(regno_use_in): Likewise.
(schedule_insns): Remove unused variable `i'.
* toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
(v_message_with_decl): Remove unused variable `n'.
(botch): Explicitly declare parameter `s' as char *.
(main): Add parentheses around assignment used as truth value.
* tree.c (make_node): Protect the variable `kind' with the
GATHER_STATISTICS macro.
(real_value_from_int_cst): Move variable `e' inside conditional
macro area where it is used.
(tree_last): Add parentheses around assignment used as truth value.
(build1): Protect the variable `kind' with the GATHER_STATISTICS
macro.
(print_obstack_statistics): Reconcile format vs. args in fprintf.
Protect variables `i', `total_nodes', and `total_bytes' with the
GATHER_STATISTICS macro.
Lots more -W -Wall warnings disappear.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17518
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:11:54 +0000 (22:11 +0000)]
/
* c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
prototype for `handle_sysv_pragma', and make it static. Add
parentheses around assignment used as truth value.
* combine.c (combine_instructions): Protect variable `prev' with
macro HAVE_cc0.
(can_combine_p): Protect variable `link' with AUTO_INC_DEC.
(extract_left_shift): Add parentheses around operand of &.
(merge_outer_ops): Avoid an empty body in an else-statement.
(gen_rtx_combine): Remove unused variable `i'.
* sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
function monstartup `void'. Likewise for internal_mcount. Add
`static void' prototype for moncontrol. Reconcile sprintf format
vs. args.
* sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
Make return type of function_arg_slotno explicitly `int'.
(reg_unused_after): Add parentheses around assignment used as
truth value.
(save_regs): Add explicit braces to avoid ambiguous `else'.
(function_arg_slotno): Add parentheses around && within ||.
(function_arg_pass_by_reference): Likewise.
(sparc_flat_output_function_prologue): Reconcile fprintf format
vs. args.
* svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
assignment used as truth value.
* cplus-dem.c: Include <stdlib.h>.
(demangle_signature): Avoid an empty body in an else-statement.
(do_type): Remove unused variable `lvl'.
* cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
Include <string.h>/<strings.h>.
(cpp_lex): Remove unused variable `namelen'.
(cpp_lex): Explicitly declare `num_chars' as an int.
* cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
<unistd.h> instead. Explicitly declare is_system_include
returning int.
(make_assertion): Remove unused variable `kt'.
(cpp_expand_to_buffer): Hide variable `obuf'.
(output_line_command): Remove unused variables, `line_end',
`line_cmd_buf' and `len'.
(macarg): Remove unused variable `arg_start'.
(special_symbol): Remove unused variable `i'. Add parentheses
around assignment used as truth value.
(do_include): Remove unused variables `pcfname' and `retried',
hide `pcf' and `pcfbuflimit'.
(do_line): Remove unused variable `i'.
(finclude): Hide variable `missing_newline'.
(cpp_handle_options): Remove unused variable `j'.
(read_token_list): Remove unused variable `eofp'.
(cpp_error_with_line): Remove unused variable `i'.
(cpp_warning_with_line): Likewise.
(cpp_pedwarn_with_line): Explicitly declare `column' as int.
(cpp_error_from_errno): Remove unused variable `i'.
* cse.c (invalidate): Add parentheses around assignment used as
truth value.
(find_best_addr): Move declaration of variable `our_cost' inside
the conditional macro where its used.
(fold_rtx): Avoid an empty body in an if-statement.
(cse_insn): Wrap variables `this_insn_cc0_mode' and
`this_insn_cc0' in macro HAVE_cc0.
* dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
(ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
(output_uleb128): Likewise.
(output_sleb128): Likewise.
(output_cfi): Likewise.
(output_call_frame_info): Remove unused variables `j', `fde_size'
and `fde_pad'.
(comp_unit_has_inlines): Hide declaration as per rest of file.
(size_of_line_prolog): Correct typo in prototype.
(add_arange): Likewise.
(output_aranges): Likewise.
(add_name_and_src_coords_attributes): Likewise.
(gen_array_type_die): Likewise.
(gen_inlined_subroutine_die): Likewise.
(equate_decl_number_to_die): Remove unused variable `i'.
(print_die): Reconcile format vs. args in fprintf's.
(print_dwarf_line_table): Likewise.
(output_die): Likewise.
(output_line_info): Likewise.
(add_subscript_info): Avoid an empty body in an else-statement.
(gen_subprogram_die): Remove unused variable `fp_loc'.
* dwarfout.c: Explicitly declare `next_pubname_number' as int.
Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
macro. Protect `src_coords_attribute' prototype with
DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
prototype as in the rest of the file. Likewise for
`output_pointer_type_die' and `output_reference_type_die'. Remove
prototype for `type_of_for_scope'.
(output_unsigned_leb128): Reconcile format vs. args in fprintf.
(type_attribute): Add explicit braces to avoid ambiguous `else'.
* final.c: Include <stdlib.h> and <string.h>/<strings.h>.
(shorten_branches): Protect declaration of tmp_length with
SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
(profile_function): Protect declaration of `sval' and `cxt'
variables with appropriate macros.
(final_scan_insn): Likewise for `note' variable. Add explicit
braces to avoid empty body in an if-statement.
(output_asm_insn): Move variable `i' inside macro conditional
where it is used. Add parentheses around assignment used as truth
value.
(asm_fprintf) Likewise, likewise.
* fix-header.c (main): Remove unused variable `done'. Protect
declaration of `i' with FIXPROTO_IGNORE_LIST.
* pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
* print-rtl.c (print_inline_rtx): Explicitly declare the parameter
`ind'.
* profile.c: Include <string.h>/<strings.h>.
(instrument_arcs): Remove unused variables `note', `inverted',
`zero' and `neg_one'.
(branch_prob): Avoid empty body in an if-statement.
* regclass.c: Include <stdlib.h>.
(reg_alternate_class): Explicitly declare parameter `regno'.
* regmove.c (regmove_optimize): Remove unused variable `p'. Add
parentheses around assignment used as truth value.
(find_matches): Remove unused variables `output_operand' and
`matching_operand'.
(fixup_match_1): Remove statement with no effect: "if (0) ;".
* scan.c (sstring_append): Explicitly declare `count' as int.
(scan_string): Explicitly declare parameter `init' as int.
* sched.c: Include <stdlib.h>.
(BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
(rank_for_schedule): Add parentheses around assignment used as
truth value.
(schedule_block): Likewise.
(regno_use_in): Likewise.
(schedule_insns): Remove unused variable `i'.
* toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
(v_message_with_decl): Remove unused variable `n'.
(botch): Explicitly declare parameter `s' as char *.
(main): Add parentheses around assignment used as truth value.
* tree.c (make_node): Protect the variable `kind' with the
GATHER_STATISTICS macro.
(real_value_from_int_cst): Move variable `e' inside conditional
macro area where it is used.
(tree_last): Add parentheses around assignment used as truth value.
(build1): Protect the variable `kind' with the GATHER_STATISTICS
macro.
(print_obstack_statistics): Reconcile format vs. args in fprintf.
Protect variables `i', `total_nodes', and `total_bytes' with the
GATHER_STATISTICS macro.
Lots more -W -Wall warnings disappear.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17517
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:11:45 +0000 (22:11 +0000)]
* c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
prototype for `handle_sysv_pragma', and make it static. Add
parentheses around assignment used as truth value.
* combine.c (combine_instructions): Protect variable `prev' with
macro HAVE_cc0.
(can_combine_p): Protect variable `link' with AUTO_INC_DEC.
(extract_left_shift): Add parentheses around operand of &.
(merge_outer_ops): Avoid an empty body in an else-statement.
(gen_rtx_combine): Remove unused variable `i'.
* sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
function monstartup `void'. Likewise for internal_mcount. Add
`static void' prototype for moncontrol. Reconcile sprintf format
vs. args.
* sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
Make return type of function_arg_slotno explicitly `int'.
(reg_unused_after): Add parentheses around assignment used as
truth value.
(save_regs): Add explicit braces to avoid ambiguous `else'.
(function_arg_slotno): Add parentheses around && within ||.
(function_arg_pass_by_reference): Likewise.
(sparc_flat_output_function_prologue): Reconcile fprintf format
vs. args.
* svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
assignment used as truth value.
* cplus-dem.c: Include <stdlib.h>.
(demangle_signature): Avoid an empty body in an else-statement.
(do_type): Remove unused variable `lvl'.
* cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
Include <string.h>/<strings.h>.
(cpp_lex): Remove unused variable `namelen'.
(cpp_lex): Explicitly declare `num_chars' as an int.
* cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
<unistd.h> instead. Explicitly declare is_system_include
returning int.
(make_assertion): Remove unused variable `kt'.
(cpp_expand_to_buffer): Hide variable `obuf'.
(output_line_command): Remove unused variables, `line_end',
`line_cmd_buf' and `len'.
(macarg): Remove unused variable `arg_start'.
(special_symbol): Remove unused variable `i'. Add parentheses
around assignment used as truth value.
(do_include): Remove unused variables `pcfname' and `retried',
hide `pcf' and `pcfbuflimit'.
(do_line): Remove unused variable `i'.
(finclude): Hide variable `missing_newline'.
(cpp_handle_options): Remove unused variable `j'.
(read_token_list): Remove unused variable `eofp'.
(cpp_error_with_line): Remove unused variable `i'.
(cpp_warning_with_line): Likewise.
(cpp_pedwarn_with_line): Explicitly declare `column' as int.
(cpp_error_from_errno): Remove unused variable `i'.
* cse.c (invalidate): Add parentheses around assignment used as
truth value.
(find_best_addr): Move declaration of variable `our_cost' inside
the conditional macro where its used.
(fold_rtx): Avoid an empty body in an if-statement.
(cse_insn): Wrap variables `this_insn_cc0_mode' and
`this_insn_cc0' in macro HAVE_cc0.
* dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
(ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
(output_uleb128): Likewise.
(output_sleb128): Likewise.
(output_cfi): Likewise.
(output_call_frame_info): Remove unused variables `j', `fde_size'
and `fde_pad'.
(comp_unit_has_inlines): Hide declaration as per rest of file.
(size_of_line_prolog): Correct typo in prototype.
(add_arange): Likewise.
(output_aranges): Likewise.
(add_name_and_src_coords_attributes): Likewise.
(gen_array_type_die): Likewise.
(gen_inlined_subroutine_die): Likewise.
(equate_decl_number_to_die): Remove unused variable `i'.
(print_die): Reconcile format vs. args in fprintf's.
(print_dwarf_line_table): Likewise.
(output_die): Likewise.
(output_line_info): Likewise.
(add_subscript_info): Avoid an empty body in an else-statement.
(gen_subprogram_die): Remove unused variable `fp_loc'.
* dwarfout.c: Explicitly declare `next_pubname_number' as int.
Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
macro. Protect `src_coords_attribute' prototype with
DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
prototype as in the rest of the file. Likewise for
`output_pointer_type_die' and `output_reference_type_die'. Remove
prototype for `type_of_for_scope'.
(output_unsigned_leb128): Reconcile format vs. args in fprintf.
(type_attribute): Add explicit braces to avoid ambiguous `else'.
* final.c: Include <stdlib.h> and <string.h>/<strings.h>.
(shorten_branches): Protect declaration of tmp_length with
SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
(profile_function): Protect declaration of `sval' and `cxt'
variables with appropriate macros.
(final_scan_insn): Likewise for `note' variable. Add explicit
braces to avoid empty body in an if-statement.
(output_asm_insn): Move variable `i' inside macro conditional
where it is used. Add parentheses around assignment used as truth
value.
(asm_fprintf) Likewise, likewise.
* fix-header.c (main): Remove unused variable `done'. Protect
declaration of `i' with FIXPROTO_IGNORE_LIST.
* pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
* print-rtl.c (print_inline_rtx): Explicitly declare the parameter
`ind'.
* profile.c: Include <string.h>/<strings.h>.
(instrument_arcs): Remove unused variables `note', `inverted',
`zero' and `neg_one'.
(branch_prob): Avoid empty body in an if-statement.
* regclass.c: Include <stdlib.h>.
(reg_alternate_class): Explicitly declare parameter `regno'.
* regmove.c (regmove_optimize): Remove unused variable `p'. Add
parentheses around assignment used as truth value.
(find_matches): Remove unused variables `output_operand' and
`matching_operand'.
(fixup_match_1): Remove statement with no effect: "if (0) ;".
* scan.c (sstring_append): Explicitly declare `count' as int.
(scan_string): Explicitly declare parameter `init' as int.
* sched.c: Include <stdlib.h>.
(BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
(rank_for_schedule): Add parentheses around assignment used as
truth value.
(schedule_block): Likewise.
(regno_use_in): Likewise.
(schedule_insns): Remove unused variable `i'.
* toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
(v_message_with_decl): Remove unused variable `n'.
(botch): Explicitly declare parameter `s' as char *.
(main): Add parentheses around assignment used as truth value.
* tree.c (make_node): Protect the variable `kind' with the
GATHER_STATISTICS macro.
(real_value_from_int_cst): Move variable `e' inside conditional
macro area where it is used.
(tree_last): Add parentheses around assignment used as truth value.
(build1): Protect the variable `kind' with the GATHER_STATISTICS
macro.
(print_obstack_statistics): Reconcile format vs. args in fprintf.
Protect variables `i', `total_nodes', and `total_bytes' with the
GATHER_STATISTICS macro.
Lots more -W -Wall warnings disappear.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17516
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:11:37 +0000 (22:11 +0000)]
a
* c-lex.c: Include <stdlib.h> and <string.h>/<strings.h>. Add
prototype for `handle_sysv_pragma', and make it static. Add
parentheses around assignment used as truth value.
* combine.c (combine_instructions): Protect variable `prev' with
macro HAVE_cc0.
(can_combine_p): Protect variable `link' with AUTO_INC_DEC.
(extract_left_shift): Add parentheses around operand of &.
(merge_outer_ops): Avoid an empty body in an else-statement.
(gen_rtx_combine): Remove unused variable `i'.
* sparc/gmon-sol2.c: Include <fcntl.h>. Make return type of
function monstartup `void'. Likewise for internal_mcount. Add
`static void' prototype for moncontrol. Reconcile sprintf format
vs. args.
* sparc/sparc.c: Include <stdlib.h> and <string.h>/<strings.h>.
Make return type of function_arg_slotno explicitly `int'.
(reg_unused_after): Add parentheses around assignment used as
truth value.
(save_regs): Add explicit braces to avoid ambiguous `else'.
(function_arg_slotno): Add parentheses around && within ||.
(function_arg_pass_by_reference): Likewise.
(sparc_flat_output_function_prologue): Reconcile fprintf format
vs. args.
* svr4.h (ASM_OUTPUT_LIMITED_STRING): Add parentheses around
assignment used as truth value.
* cplus-dem.c: Include <stdlib.h>.
(demangle_signature): Avoid an empty body in an else-statement.
(do_type): Remove unused variable `lvl'.
* cppexp.c: Don't have <stdlib.h> depend on MULTIBYTE_CHARS.
Include <string.h>/<strings.h>.
(cpp_lex): Remove unused variable `namelen'.
(cpp_lex): Explicitly declare `num_chars' as an int.
* cpplib.c: Avoid duplicate inclusion of <stdlib.h>, include
<unistd.h> instead. Explicitly declare is_system_include
returning int.
(make_assertion): Remove unused variable `kt'.
(cpp_expand_to_buffer): Hide variable `obuf'.
(output_line_command): Remove unused variables, `line_end',
`line_cmd_buf' and `len'.
(macarg): Remove unused variable `arg_start'.
(special_symbol): Remove unused variable `i'. Add parentheses
around assignment used as truth value.
(do_include): Remove unused variables `pcfname' and `retried',
hide `pcf' and `pcfbuflimit'.
(do_line): Remove unused variable `i'.
(finclude): Hide variable `missing_newline'.
(cpp_handle_options): Remove unused variable `j'.
(read_token_list): Remove unused variable `eofp'.
(cpp_error_with_line): Remove unused variable `i'.
(cpp_warning_with_line): Likewise.
(cpp_pedwarn_with_line): Explicitly declare `column' as int.
(cpp_error_from_errno): Remove unused variable `i'.
* cse.c (invalidate): Add parentheses around assignment used as
truth value.
(find_best_addr): Move declaration of variable `our_cost' inside
the conditional macro where its used.
(fold_rtx): Avoid an empty body in an if-statement.
(cse_insn): Wrap variables `this_insn_cc0_mode' and
`this_insn_cc0' in macro HAVE_cc0.
* dwarf2out.c: Include <stdlib.h> and <string.h>/<string.h>.
(ASM_OUTPUT_DWARF_DATA8): Reconcile format vs. args in fprintf's.
(output_uleb128): Likewise.
(output_sleb128): Likewise.
(output_cfi): Likewise.
(output_call_frame_info): Remove unused variables `j', `fde_size'
and `fde_pad'.
(comp_unit_has_inlines): Hide declaration as per rest of file.
(size_of_line_prolog): Correct typo in prototype.
(add_arange): Likewise.
(output_aranges): Likewise.
(add_name_and_src_coords_attributes): Likewise.
(gen_array_type_die): Likewise.
(gen_inlined_subroutine_die): Likewise.
(equate_decl_number_to_die): Remove unused variable `i'.
(print_die): Reconcile format vs. args in fprintf's.
(print_dwarf_line_table): Likewise.
(output_die): Likewise.
(output_line_info): Likewise.
(add_subscript_info): Avoid an empty body in an else-statement.
(gen_subprogram_die): Remove unused variable `fp_loc'.
* dwarfout.c: Explicitly declare `next_pubname_number' as int.
Protect `ordering_attribute' prototype with USE_ORDERING_ATTRIBUTE
macro. Protect `src_coords_attribute' prototype with
DWARF_DECL_COORDINATES macro. Hide `output_entry_point_die'
prototype as in the rest of the file. Likewise for
`output_pointer_type_die' and `output_reference_type_die'. Remove
prototype for `type_of_for_scope'.
(output_unsigned_leb128): Reconcile format vs. args in fprintf.
(type_attribute): Add explicit braces to avoid ambiguous `else'.
* final.c: Include <stdlib.h> and <string.h>/<strings.h>.
(shorten_branches): Protect declaration of tmp_length with
SHORTEN_WITH_ADJUST_INSN_LENGTH and ADJUST_INSN_LENGTH macros.
(profile_function): Protect declaration of `sval' and `cxt'
variables with appropriate macros.
(final_scan_insn): Likewise for `note' variable. Add explicit
braces to avoid empty body in an if-statement.
(output_asm_insn): Move variable `i' inside macro conditional
where it is used. Add parentheses around assignment used as truth
value.
(asm_fprintf) Likewise, likewise.
* fix-header.c (main): Remove unused variable `done'. Protect
declaration of `i' with FIXPROTO_IGNORE_LIST.
* pexecute.c: Include <unistd.h>. Prototype `my_strerror'.
* print-rtl.c (print_inline_rtx): Explicitly declare the parameter
`ind'.
* profile.c: Include <string.h>/<strings.h>.
(instrument_arcs): Remove unused variables `note', `inverted',
`zero' and `neg_one'.
(branch_prob): Avoid empty body in an if-statement.
* regclass.c: Include <stdlib.h>.
(reg_alternate_class): Explicitly declare parameter `regno'.
* regmove.c (regmove_optimize): Remove unused variable `p'. Add
parentheses around assignment used as truth value.
(find_matches): Remove unused variables `output_operand' and
`matching_operand'.
(fixup_match_1): Remove statement with no effect: "if (0) ;".
* scan.c (sstring_append): Explicitly declare `count' as int.
(scan_string): Explicitly declare parameter `init' as int.
* sched.c: Include <stdlib.h>.
(BLOCKAGE_RANGE): Add parentheses around arithmetic in operand of |.
(rank_for_schedule): Add parentheses around assignment used as
truth value.
(schedule_block): Likewise.
(regno_use_in): Likewise.
(schedule_insns): Remove unused variable `i'.
* toplev.c: Include <stdlib.h> and <string.h>/<strings.h>.
(v_message_with_decl): Remove unused variable `n'.
(botch): Explicitly declare parameter `s' as char *.
(main): Add parentheses around assignment used as truth value.
* tree.c (make_node): Protect the variable `kind' with the
GATHER_STATISTICS macro.
(real_value_from_int_cst): Move variable `e' inside conditional
macro area where it is used.
(tree_last): Add parentheses around assignment used as truth value.
(build1): Protect the variable `kind' with the GATHER_STATISTICS
macro.
(print_obstack_statistics): Reconcile format vs. args in fprintf.
Protect variables `i', `total_nodes', and `total_bytes' with the
GATHER_STATISTICS macro.
Lots more -W -Wall warnings disappear.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17515
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 22:02:13 +0000 (22:02 +0000)]
* m32r.md, mips.md, mn10200.md, mn10300.md, pyr.md: Add
some comments regarding use of dead_or_set_p.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17514
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Jan 1998 21:16:28 +0000 (21:16 +0000)]
* fixincludes: Tweak fix for struct exception in math.h
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17513
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 27 Jan 1998 20:47:56 +0000 (20:47 +0000)]
* call.c (add_template_candidate_real): New function.
(add_template_candidate): Use it.
(add_template_conv_candidate): Likewise.
(joust): Pass extra argument to more_specialized.
* class.c (instantiate_type): Handle a single FUNCTION_DECL.
(is_local_class): Remove.
(finish_struct): Check TI_PENDING_SPECIALIZATION_FLAG.
* cp-tree.h (is_local_class): Remove.
(perform_array_to_pointer_conversion): Likewise.
(finish_member_template_decl): Add.
(check_explicit_specialization): Return a tree, not an int.
(more_specialized): Take additional argument.
(get_bindings): Likewise.
(TI_PENDING_SPECIALIZATION_FLAG): New macro.
* cvt.c (perform_qualification_conversions): Use comp_ptr_ttypes.
(perform_array_to_pointer_conversion): Remove.
* decl.c (saved_scope): Add processing_specialization,
processing_explicit_instantiation fields.
(maybe_push_to_top_level): Save them.
(pop_from_top_level): Restore them.
(grokfndecl): Use new return value from
check_explicit_specialization.
(start_decl): Don't check flag_guiding_decls before pushing
decls.
(cp_finish_decl): Remove previous (bogus) change.
(grok_declarator): Use decl_function_context rather than
is_local_class.
* decl2.c (finish_file): Pass extra argument to get_bindings.
(build_expr_from_tree): Let build_x_component_ref check
validity of arguments rather than doing it here.
* lex.c (cons_up_default_function): Remove code fooling with
processing_specialization, processing_explicit_instantiation
flags, as that is now done in {maybe_push_top,pop_from}_top_level.
* method.c (build_overload_identifier): Mangle local classes in
template functions correctly.
* parse.y (finish_member_template_decl): Move to pt.c.
* pt.c (finish_member_template_decl): Moved here from parse.y.
(print_candidates): New function.
(determine_specialization): Change interface. Properly look for
most specialized versions of template candidates.
(check_explicit_specialization): Fully process explicit
instantiations.
(push_template_decl): Avoid looking at CLASSTYPE fields in
FUNCTION_DECLS.
(determine_overloaded_function): Remove.
(convert_nontype_argument): Change name from
convert_nontype_parameter. Use determine_overloaded_function
instead of instantiate_type.
(mangle_class_name_for_template): Handle type contexts as well as
function contexts.
(classtype_mangled_name): Likewise.
(lookup_template_class): Likewise.
(tsubst): Likewise.
(more_specialized): Take explict template arguments as a
parameter.
(most_specialized): Likewise.
(get_bindings): Likewise. Check that return types match before
proclaiming a function a match.
(do_decl_instantiation): Remove code searching for function to
instantiate; that is now done in check_explicit_specialization.
(add_maybe_template): Pass extra argument to get_bindings.
* tree.c (really_overloaded_fn): Use is_overloaded_fn to simplify
implementation.
* typeck.c (build_component_ref): Check for invalid arguments.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17512
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Tue, 27 Jan 1998 17:22:43 +0000 (17:22 +0000)]
Patch from Gavin to fix mips16 prologue/epilogue bugs.
* mips/mips.c (mips_expand_prologue,mips_expand_epilogue):
Change mode of registers used to add/sub from
hard_frame_pointer_rtx from word_mode to Pmode.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@17511
138bc75d-0d04-0410-961f-
82ee72b054a4