* semantics.c: New file, containing routines to perform the
semantic phase of parsing.
* parse.y: Use it.
* pt.c (tsubst_expr): Likewise.
* cp-tree.h: Declare the various functions in semantics.c.
Provide macros to access _STMT tree nodes.
* cp-tree.def: Add ASM_STMT tree node.
* Makefile.in, Make-lang.in: Add dependencies on and for
semantics.c.
From-SVN: r18658
* rtl.c (read_rtx): Fall back on homebrew atoll if HOST_WIDE_INT
is large, and the system doesn't provide atoll or atoq.
(atoll): New.
* alpha/xm-vms.h (HAVE_ATOLL): Define.
Reported by Klaus Kaempf <kkaempf@progis.de>.
From-SVN: r18657
1998-03-18 Dave Love <d.love@dl.ac.uk>
* Makefile.in ($(CONFIGURE_TARGET_MODULES)): Set CONFIG_SITE to a
non-existent file since /dev/null loses with bash 2.0/autoconf 2.12.
From-SVN: r18656
* typeck2.c (build_x_arrow): Don't crash when an aggregate type
has no overloaded operator ->.
* call.c (build_field_call): Don't crash when presented with a
field that is actually a nested type.
* decl.c (pushtag): Deal with friend class injection in local
classes.
* call.c (build_object_call): Don't crash if OBJ is a
pointer-to-member-function.
From-SVN: r18647
�
* config-ml.in: After building symlink tree call make distclean
if a Makefile got linked into ${ml_dir}/${ml_libdir}; this happens
to be the case for libiberty.
* Makefile.in (clean, distclean): Add 'info' explicitly.
From-SVN: r18645
�
* config-ml.in: After building symlink tree call make distclean
if a Makefile got linked into ${ml_dir}/${ml_libdir}; this happens
to be the case for libiberty.
* Makefile.in (clean, distclean): Add 'info' explicitly.
From-SVN: r18644
�
* config-ml.in: After building symlink tree call make distclean
if a Makefile got linked into ${ml_dir}/${ml_libdir}; this happens
to be the case for libiberty.
* Makefile.in (clean, distclean): Add 'info' explicitly.
From-SVN: r18643
P
* config-ml.in: After building symlink tree call make distclean
if a Makefile got linked into ${ml_dir}/${ml_libdir}; this happens
to be the case for libiberty.
* Makefile.in (clean, distclean): Add 'info' explicitly.
From-SVN: r18642
* class.c (pushclass): Only use the mi_matrix stuff #ifdef MI_MATRIX.
* search.c: Likewise.
* lex.c (do_pending_defargs): Only call
maybe_{begin,end}_member_template_processing for FUNCTION_DECLs.
* parse.y (initdcl0_innards): Move maybeasm back into initdcl0 et al.
From-SVN: r18637
* except.c (insn_eh_region, maximum_uid): New static variables.
(set_insn_eh_region): New static function to set region numbers.
(free_insn_eh_region): New function to free EH region table.
(init_insn_eh_region): New function to initialize EH region table.
(in_same_eh_region): New function used to determine if two rtl
instructions are in the same exception region or not.
From-SVN: r18624
* except.h (in_same_eh_region): New prototype.
(free_insn_eh_region, init_insn_eh_region): New prototypes.
* except.c (insn_eh_region, maximum_uid): New static variables.
(set_insn_eh_region): New static function to set region numbers.
(free_insn_eh_region): New function to free EH region table.
(init_insn_eh_region): New function to initialize EH region table.
(in_same_eh_region): New function used to determine if two rtl
instructions are in the same exception region or not.
* final.c (final): Initialize the table indicating which instructions
belong in which exception region.
* genpeep.c (main): Add "except.h" to include file list in generated
file insn-peep.c.
* config/sparc/sparc.md: Add calls to 'in_same_eh_region' in 4
peepholes involving calls and unconditional branches.
From-SVN: r18622
Change MEMORY_MOVE_COST defs and uses to be able to take register class into
account. Change mips def to actually do so, others to just ignore extra args.
Doc changes too.
From-SVN: r18621
* pt.c (tsubst_copy): Deal with BIND_EXPR in a way that more
closely mimics the behavior in parse.y.
(tsubst_expr): Return the resuting BLOCK when making a tsubst'ing
into a compound statement.
From-SVN: r18618
* config/m68k/m68k.c: Include <stdlib.h> for atoi. Include
"recog.h" for offsettable_memref_p.
(legitimize_pic_address): Remove unused variable `offset'.
(notice_update_cc): Change return type to void. Add default label
to switch.
(standard_68881_constant_p): Remove unused variable mode.
(print_operand): Define local variable i only if SUPPORT_SUN_FPA.
(const_int_cost): Explicitly declare as returning int.
(output_dbcc_and_branch): Change return type to void.
* config/m68k/linux.h, config/m68k/m68k.md, config/m68k/m68k.c,
config/m68k/m68k.h: Replace gen_rtx (XXX, ...) with gen_rtx_XXX
(...). Use GEN_INT instead of gen_rtx_CONST_INT.
From-SVN: r18617
* cp-tree.h (TEMPLATE_PARMS_FOR_INLINE): New macro.
* pt.c (inline_needs_template_parms): New fn.
(original_template): New fn.
(push_inline_template_parms_recursive): New fn.
(maybe_begin_member_template_processing): Use them.
(maybe_end_member_template_processing): Likewise.
(is_member_or_friend_template): Rename to is_member_template.
Member functions of local classes are never member templates.
* lex.c (do_identifier): Handle TEMPLATE_DECL that was
added in the class scope to catch redefinition error.
* pt.c (reduce_template_parm_level): Also copy
the DECL_TEMPLATE_PARMS field.
From-SVN: r18595
d
* cp-tree.h (struct lang_decl_flags): Add needs_final_overrider.
(DECL_NEEDS_FINAL_OVERRIDER_P): New macro.
* class.c (override_one_vtable): Set DECL_NEEDS_FINAL_OVERRIDER_P.
* decl.c (duplicate_decls): Propagate it.
* typeck2.c (abstract_virtuals_error): Use two loops to emit
abstract virtual functions and virtual functions which need a
final overrider separately.
From-SVN: r18588
a
* cp-tree.h (struct lang_decl_flags): Add needs_final_overrider.
(DECL_NEEDS_FINAL_OVERRIDER_P): New macro.
* class.c (override_one_vtable): Set DECL_NEEDS_FINAL_OVERRIDER_P.
* decl.c (duplicate_decls): Propagate it.
* typeck2.c (abstract_virtuals_error): Use two loops to emit
abstract virtual functions and virtual functions which need a
final overrider separately.
From-SVN: r18587
�
* cp-tree.h (struct lang_decl_flags): Add needs_final_overrider.
(DECL_NEEDS_FINAL_OVERRIDER_P): New macro.
* class.c (override_one_vtable): Set DECL_NEEDS_FINAL_OVERRIDER_P.
* decl.c (duplicate_decls): Propagate it.
* typeck2.c (abstract_virtuals_error): Use two loops to emit
abstract virtual functions and virtual functions which need a
final overrider separately.
From-SVN: r18586