Commit Graph

14739 Commits

Author SHA1 Message Date
Jason Merrill
da4768fe2e call.c (build_new_op): Fix copy error.
* call.c (build_new_op): Fix copy error.
	(build_op_new_call): New fn.
	(build_op_delete_call): New fn.
	* cp-tree.h: Declare them.
	* init.c (build_new): Use them.  Support placement delete.
	(build_x_delete): Use build_op_delete_call.
	(build_delete): Likewise.
	* decl2.c (delete_sanity): Likewise.
	(coerce_delete_type): Don't complain about placement delete.

Support placement delete.

From-SVN: r16501
1997-11-15 03:36:38 -05:00
Jeff Law
df4791b95d add missing comment from devo.
From-SVN: r16499
1997-11-14 10:59:57 -07:00
Fred Fish
874a8709bf dwarfout.c (byte_size_attribute): Add local var upper_bound and add case to handle STRING_TYPE.
* dwarfout.c (byte_size_attribute):  Add local var upper_bound
        and add case to handle STRING_TYPE.
        * dwarfout.c (output_string_type_die):  Fix code to generate
        correct string length attribute for fixed length strings.
        Still needs support for varying length strings.

From-SVN: r16498
1997-11-14 09:07:17 -07:00
Jeffrey A Law
ea46619609 * toplev.c (get_run_time): Do something sensible for cygwin32.
From-SVN: r16497
1997-11-14 08:44:56 -07:00
Dave Love
79cf8f5e2c intrin.def: Supply gfrt for CPU_TIME.
1997-11-14  Dave Love  <d.love@dl.ac.uk>

	* intrin.def: Supply gfrt for CPU_TIME.  Generalize arg types of
	INT2, INT8, per doc.

From-SVN: r16496
1997-11-14 08:13:42 -07:00
Richard Henderson
f35bcbc5d0 expr.c (expand_builtin_setjmp): Set current_function_has_nonlocal_label.
* expr.c (expand_builtin_setjmp): Set
        current_function_has_nonlocal_label.
        * stupid.c (stupid_life_analysis): If has_nonlocal_label, kill
        call-saved registers across calls.

        * alpha.md (exception_receiver): Remove.
        (nonlocal_goto_receiver_osf): New
        (nonlocal_goto_receiver_vms): Renamed from nonlocal_goto_receiver.
        (nonlocal_goto_receiver): New, select _osf or _vms.

From-SVN: r16492
1997-11-14 07:51:00 -07:00
Richard Henderson
531ea24eef alpha.c (output_prolog [*]): Prefix entry labels with '$' to keep them from being propogated to the object file.
* alpha.c (output_prolog [*]): Prefix entry labels with '$' to
        keep them from being propogated to the object file.
        (alpha_write_linkage): Likewise.
        * alpha.md (call_vms): Likewise.
        (call_value_vms): Likewise.
        (unnamed osf call insns): Likewise.

        * alpha.h (ASM_OUTPUT_INTERNAL_LABEL): Don't omit L from local label.
        (ASM_GENERATE_INTERNAL_LABEL): Likewise.

From-SVN: r16490
1997-11-14 07:43:14 -07:00
Richard Henderson
202f590eca alpha.c (call_operand): Any reg is valid for WinNT.
* alpha.c (call_operand): Any reg is valid for WinNT.
        * alpha.md (call_nt, call_value_nt): Don't force address into $27.
        (anon nt calls): Add 'R' alternative.
        * alpha/win-nt.h (TRAMPOLINE_TEMPLATE, TRAMPOLINE_SIZE,
        INITIALIZE_TRAMPOLINE): Handle lack of original $27 and 32-bit ptrs.

From-SVN: r16487
1997-11-14 07:23:25 -07:00
Jeffrey A Law
f78b5ca112 * calls.c (expand_call): Handle pcc_struct_value correctly for C++.
From-SVN: r16485
1997-11-14 07:06:07 -07:00
Jeffrey A Law
238ad62b9f xm-cygwin32.h (HAVE_FILE_H, [...]): Delete defines.
* i386/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Delete defines.
        * i386/xm-mingw32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.
        * rs6000/xm-cygwin32.h (HAVE_FILE_H, HAVE_RUSAGE): Likewise.

From-SVN: r16484
1997-11-14 06:59:51 -07:00
Michael Meissner
da27534458 reload1.c (new_spill_reg): Improve fixed or forbidden register spill error message.
* reload1.c (new_spill_reg): Improve fixed or forbidden register
        spill error message.

From-SVN: r16483
1997-11-13 20:36:47 -07:00
Kaveh R. Ghazi
1f1e15454f prefix.c: Use stdarg.h only ifdef __STDC__.
* prefix.c: Use stdarg.h only ifdef __STDC__.  Otherwise,
        use varargs.h.  Wrap header with <>, not "".

From-SVN: r16482
1997-11-13 20:27:55 -07:00
Jeffrey A Law
daa4b71743 integrate.c (save_for_inline_copying): Add return value from savealloc.
* integrate.c (save_for_inline_copying): Add return value from
        savealloc.

From-SVN: r16481
1997-11-13 20:20:11 -07:00
Brendan Kehoe
9bb5394eca fixincludes: Be a little more restrictive on what we will substitute to replace definitions...
* fixincludes: Be a little more restrictive on what we will
        substitute to replace definitions of MAXINT for HPUX.

From-SVN: r16480
1997-11-13 19:13:03 -07:00
Jeff Law
d863830b53 Add -frepo docs.
From-SVN: r16478
1997-11-13 18:56:51 -07:00
Jeff Law
966f5dffab Minor spacing nit.
From-SVN: r16477
1997-11-13 18:42:45 -07:00
Jeff Law
c39de8184c Comment change.
From-SVN: r16476
1997-11-13 18:41:19 -07:00
Michael Meissner
9571f69bfd dbxout.c (dbxout_symbol_location): Don't assume that variables whose address is the stack or argument pointers are...
* dbxout.c (dbxout_symbol_location): Don't assume that variables
        whose address is the stack or argument pointers are indirect
        pointers.

From-SVN: r16475
1997-11-13 18:39:43 -07:00
Paul Eggert
e7cbb6b66e cccp.c, cpplib.c (compare_defs): Don't complain about arg name respellings unless pedantic.
* cccp.c, cpplib.c (compare_defs):
        Don't complain about arg name respellings unless pedantic.
        * cpplib.c (compare_defs): Accept pfile as new arg.
        All callers changed.
Bring over from the FSF.

From-SVN: r16474
1997-11-13 18:33:27 -07:00
J"orn Rennecke
9f29ca789b * fold-const.c (fold_truthop): Fix bug in last change.
From-SVN: r16473
1997-11-14 00:38:08 +00:00
Paul Eggert
41c9120baf patch from paul eggert to fix -0.0/0.0 confusion that breaks glibc
* real.h (REAL_VALUES_IDENTICAL): New macro.
	* expr.c (is_zeros_p): Don't consider -0.0 to be all zeros.
	* fold-const.c (operand_equal_p): Don't consider -0.0 to be
	identical to 0.0.
	* tree.c (simple_cst_equal): Don't consider -0.0 to have the
	same tree structure as 0.0.
	* varasm.c (immed_real_const_1): Use new REAL_VALUES_IDENTICAL
	macro instead of doing it by hand.

From-SVN: r16472
1997-11-13 16:07:27 -08:00
Jeffrey A Law
323d8e7b66 lib1funcs.asm: Minor whitespace changes.
* v850/lib1funcs.asm: Minor whitespace changes.
        * v850.c: Fix minor formatting problems in many places.
        (construct_restore_jr, construct_save_jarl): Remove unwanted aborts.

From-SVN: r16471
1997-11-13 16:55:08 -07:00
Jeff Law
5a75af6284 Whitespace changes.
From-SVN: r16470
1997-11-13 16:49:41 -07:00
Jeffrey A Law
8930b06354 flow.c (find_basic_blocks): During marking phase...
* flow.c (find_basic_blocks): During marking phase, if we encounter
        an insn with a REG_LABEL note, make the target block live and
        create an edge from the insn to the target block.  Do not make
        edges from all blocks to the target block.

From-SVN: r16469
1997-11-13 16:09:27 -07:00
Jim Wilson
13529ea4fe mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and xplus1 when xplus0 is not a register.
* mips.h (GO_IF_LEGITIMATE_ADDRESS): Delete code swapping xplus0 and
	xplus1 when xplus0 is not a register.

From-SVN: r16467
1997-11-13 14:09:05 -07:00
Jason Merrill
9babbf20ae removed unused parm to build_new_function_call
From-SVN: r16464
1997-11-13 15:01:21 -05:00
Jason Merrill
fac138ead1 tweak
From-SVN: r16463
1997-11-13 14:17:55 -05:00
Jeffrey A Law
0be28489d3 * m68k/x-next (OTHER_FIXINCLUDES_DIRS): Include /NextDeveloper/Headers.
From-SVN: r16462
1997-11-13 11:53:09 -07:00
Jeffrey A Law
759c135e3b confiugre.in: Tweak NCR entries.
* confiugre.in: Tweak NCR entries.
        * configure: Rebuilt.

From-SVN: r16458
1997-11-13 11:43:00 -07:00
Michael Meissner
47ad8c6118 Fix problems in splitting DF constants on big endian hosts & Davids patch for power shifts.
From-SVN: r16454
1997-11-13 16:59:07 +00:00
Jason Merrill
2bb14213a3 init.c (build_new): Make the cleanup last longer.
* init.c (build_new): Make the cleanup last longer.
	(expand_vec_init): Call do_pending_stack_adjust.

From-SVN: r16451
1997-11-13 05:11:23 -05:00
Jason Merrill
4699894f5b lose implicit int
From-SVN: r16449
1997-11-13 04:36:16 -05:00
J"orn Rennecke
5a6b336594 fold-const.c (fold_truthop): When changing a one-bit comparison against zero into a comparison against mask...
* fold-const.c (fold_truthop): When changing a one-bit comparison
	against zero into a comparison against mask, do a proper sign
	extension.

From-SVN: r16448
1997-11-13 00:09:37 +00:00
Jason Merrill
2bd3bc6f5c thinko
From-SVN: r16446
1997-11-12 15:15:09 -05:00
Jason Merrill
a7d87521b2 pt.c (do_type_instantiation): Fix typo.
* pt.c (do_type_instantiation): Fix typo.
	(mark_class_instantiated): If we support one_only but not weak
	symbols, don't mark this as known.

	* init.c (build_new): Handle cookies in EH cleanup.

From-SVN: r16444
1997-11-12 14:50:15 -05:00
Jeff Law
31d525285d Fix typo.
From-SVN: r16443
1997-11-12 11:21:36 -07:00
Jeffrey A Law
3a88cbd106 except.c: Do not include "assert.h".
* except.c: Do not include "assert.h".
        (save_eh_status): Turn asserts into conditional aborts.
        (restore_eh_status, scan_region): Likewise.
        * dwarfout.c: Do not include "assert.h".
        (bit_offset_attribute): Turn asserts into conditional aborts.
        (bit_size_attribute, output_inlined_enumeration_type_die): Likewise.
        (output_inlined_structure_type_die): Likewise.
        (output_inlined_union_type_die): Likewise
        (output_tagged_type_instantiation): Likewise.
        (dwarfout_file_scope_decl): Likewise.
        * dwarf2out.c: Do not include "assert.h"
        (expand_builtin_dwarf_reg_size): Turn asserts into conditional aborts.
        (reg_save, initial_return_save, dwarf2out_frame_debug): Likewise.
        (add_child_die, modified_type_die, add_bit_offset_attribute): Likewise.
        (add_bit_size_attribute, scope_die_for): Likewise.
        (output_pending_types_for_scope): Likewise.
        (get_inlined_enumeration_type_die): Likewise.
        (get_inlined_structure_type_die): Likewise.
        (get_inlined_union_type_die, gen_subprogram_die): Likewise.
        (gen_tagged_type_instantiation_die): Likewise.

From-SVN: r16442
1997-11-12 10:07:46 -07:00
Jeffrey A Law
2ec1535d97 flow.c (find_basic_blocks): Refine further to get a more correct cfg...
* flow.c (find_basic_blocks): Refine further to get a more correct
        cfg, especially in the presense of exception handling, computed
        gotos, and other non-trivial cases.  Call abort if an inaccuracy
        is detected in the cfg.

From-SVN: r16440
1997-11-12 09:36:43 -07:00
Benjamin Kosnik
6d2b1beeac call.c (build_method_call): Call complete_type before checking for destructor.
* call.c (build_method_call): Call complete_type before checking
 	for destructor.
g++/13098 fix!!

From-SVN: r16438
1997-11-12 16:18:52 +00:00
Jason Merrill
1f109f0fdb init.c (build_new): Handle freeing allocated memory when the constructor throws.
* init.c (build_new): Handle freeing allocated memory when the
	constructor throws.

	* call.c (build_new_method_call): Fix flags arg.

	* pt.c (do_type_instantiation): Don't try to instantiate
	member templates.
	(mark_decl_instantiated): If we support one_only but not
	weak symbols, mark this one_only.
	* decl2.c (import_export_vtable): Don't defer handling of vtables
	if MULTIPLE_SYMBOL_SPACES.

From-SVN: r16436
1997-11-12 04:18:40 -05:00
Jason Merrill
0b3ca5ee97 except.c (expand_end_catch_block): Lose call to __sjpopnthrow.
* except.c (expand_end_catch_block): Lose call to __sjpopnthrow.

Fixes sjlj failures.

From-SVN: r16435
1997-11-11 22:55:00 -05:00
J"orn Rennecke
a6124a42bc glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.
* glimits.h (SHRT_MIN): Define in a way suitable for 16 bit hosts.

        * c-lex.c (whitespace_cr, skip_white_space_on_line): New functions.
        (skip_white_space): Use whitespace_cr.
        (check_newline): Handle whitespace more consistently.

From-SVN: r16433
1997-11-12 03:17:41 +00:00
Jim Wilson
8f3189a48b cygwin32 patch for Noer
cygwin32 patch for Noer
	* i386/cygwin32.h (CPP_PREDEFINES): Delete -DPOSIX.
	* i386/xm-cygwin32.h (POSIX): Define.

From-SVN: r16432
1997-11-11 16:26:40 -08:00
Jason Merrill
c0700ea5ea except.c (do_pop_exception): Return a value.
* except.c (do_pop_exception): Return a value.

Oops.

From-SVN: r16431
1997-11-11 05:59:47 -05:00
Oleg Krivosheev
a0e07e85ee iomanip.h: Fix guiding decls.
Tue Nov 11 01:40:17 1997  Oleg Krivosheev <kriol@fnal.gov>

	* iomanip.h: Fix guiding decls.

From-SVN: r16428
1997-11-11 04:43:06 -05:00
Jason Merrill
00d3396fdb call.c (build_new_method_call): Handle getting a TEMPLATE_ID_EXPR around a TEMPLATE_DECL.
* call.c (build_new_method_call): Handle getting a
 	TEMPLATE_ID_EXPR around a TEMPLATE_DECL.  Don't look for a field
 	if we got template parms.
	* typeck.c (build_x_function_call): Remember the TEMPLATE_ID_EXPR,
 	not just the args.
	* decl2.c (build_expr_from_tree): Tweak last change.
	* pt.c (tsubst_copy): Use get_first_fn instead of TREE_VALUE.
	(maybe_fold_nontype_arg): Split out from tsubst_copy.
	* tree.c (get_first_fn): Just return a TEMPLATE_ID_EXPR.

Mon Nov 10 20:08:38 1997  Kriang Lerdsuwanakij <lerdsuwa@scf-fs.usc.edu>

	* pt.c (tsubst_copy): Handle explicit template arguments in
	function calls.
	* typeck.c (build_x_function_call): Likewise.
	* decl2.c (build_expr_from_tree): Lookup function name if it
	hasn't been done.

	* pt.c (tsubst): Instantiate template functions properly when
	template parameter does not appear in function arguments and return
	type.
	(comp_template_args): Handle member templates required by tsubst.

From-SVN: r16427
1997-11-11 02:09:58 -05:00
Jason Merrill
1afc355025 new tests
From-SVN: r16426
1997-11-11 01:38:34 -05:00
Jason Merrill
343fdf03d4 decl.c (grokdeclarator): Tweak conditions for pedwarn in previous change.
* decl.c (grokdeclarator): Tweak conditions for pedwarn in
 	previous change.

Mon Nov 10 20:08:29 1997  Bruno Haible  <bruno@linuix.mathematik.uni-karlsruhe.de>

	* pt.c (coerce_template_parms): Tweak error message.

	* decl.c (grokdeclarator): If -Wreturn-type, warn everytime a
	return type defaults to `int', even if there are storage-class
	specifiers.

From-SVN: r16425
1997-11-10 23:10:30 -05:00
Gavin Koch
6d1350cdde mips.h (MASK_DEBUG_H): Set to zero, so this bit is available elsewhere.
* config/mips/mips.h (MASK_DEBUG_H): Set to zero, so this bit
is available elsewhere.

From-SVN: r16423
1997-11-11 02:04:11 +00:00
Doug Evans
d1f4474e5e sparc.md (mov[sdt]f_const_insn): Fix condition to match what the instruction can handle.
* sparc/sparc.md (mov[sdt]f_const_insn): Fix condition to match
	what the instruction can handle.

From-SVN: r16422
1997-11-11 00:39:39 +00:00