Mark Mitchell [Thu, 20 May 1999 17:19:29 +0000 (17:19 +0000)]
call.c (build_object_call): Don't look at DECL_NAME for a type.
* call.c (build_object_call): Don't look at DECL_NAME for a type.
(pt.c): Or CP_TYPE_QUALS for an ERROR_MARK.
(typeck.c): Or TYPE_MAIN_VARIANT for a type.
Jason Merrill [Thu, 20 May 1999 12:21:53 +0000 (12:21 +0000)]
class.c (finish_struct_1): Still check for ANON_AGGR_TYPE_P.
* class.c (finish_struct_1): Still check for ANON_AGGR_TYPE_P.
* class.c (finish_base_struct): Allow non-COM bases for COM classes
except at the leftmost position.
(modify_one_vtable, fixup_vtable_deltas1, override_one_vtable):
Pass the binfo's class, not the most derived, to skip_rtti_stuff.
* search.c (get_abstract_virtuals, expand_upcast_fixups): Likewise.
Mark Mitchell [Thu, 20 May 1999 10:44:47 +0000 (10:44 +0000)]
cp-tree.h (make_ptrmem_cst): New function.
* cp-tree.h (make_ptrmem_cst): New function.
* expr.c (cplus_expand_constant): Split out from ...
(cplus_expand_expr): Here. Use cplus_expand_constant.
(init_cplus_expand): Set lang_expand_constant.
* pt.c (convert_nontype_argument): Use make_ptrmem_cst.
* tree.c (make_ptrmem_cst): Define.
* typeck.c (unary_complex_lvalue): Use make_ptrmem_cst.
* typeck2.c (initializer_constant_valid_p): Use make_ptrmem_cst.
Andrew Haley [Thu, 20 May 1999 08:26:55 +0000 (08:26 +0000)]
prims.cc (catch_fpe): Call to HANDLE_DIVIDE_OVERFLOW added.
1999-05-20 Andrew Haley <aph@cygnus.com>
* libjava/prims.cc (catch_fpe): Call to HANDLE_DIVIDE_OVERFLOW
added.
* include/i386-signal.h (HANDLE_DIVIDE_OVERFLOW): New macro.
(INIT_FPE): Exception string made more informative.
* include/sparc-signal.h (INIT_FPE): Exception string made more
informative.
* testsuite/libjava.lang/Divide_1.java: New file.
* testsuite/libjava.lang/Divide_1.out: New file.
Jeff Law [Thu, 20 May 1999 02:27:28 +0000 (20:27 -0600)]
libchill, libf2c, libobjc:
* configure.in (AC_PREREQ): Update to 2.13.
(AC_EXEEXT): Call to find possible file extension.
(compiler_name): Use.
* configure: Regenerate.
libio, libstdc++
* configure.in: Test for ${compiler_name}.exe as well.
Andreas Schwab [Thu, 20 May 1999 01:54:28 +0000 (01:54 +0000)]
dbxcoff.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Use asm_fprintf and %L to generate the label name.
* config/dbxcoff.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Use
asm_fprintf and %L to generate the label name.
* config/dbxelf.h (DBX_OUTPUT_MAIN_SOURCE_FILE_END): Likewise.
(ASM_OUTPUT_SOURCE_LINE): Correct generation of internal labels.
* java-except.h (struct eh_range): Removed unused `next' member.
* verify.c (verify_jvm_instructions): Call check_nested_ranges
after adding all exception handlers. Sort exception ranges in
order of start PC.
(struct pc_index): New structure.
(start_pc_cmp): New function.
* except.c (add_handler): Return `void'. Don't call link_handler;
instead construct an ordinary linked list and do range
coalescing.
(check_nested_ranges): New function.
(link_handler): Changed interface to allow merging of eh_ranges.
Split overlapping ranges. Return `void'.
Zack Weinberg [Mon, 17 May 1999 23:37:19 +0000 (23:37 +0000)]
cppspec.c: Insert -no-gcc into command line unless -gcc was given by user.
* cppspec.c: Insert -no-gcc into command line unless -gcc was
given by user.
* gcc.c (default_compilers): Define __GNUC__ and
__GNUC_MINOR__ only if -no-gcc was not given.
* objc/lang-specs.h: Likewise.
* cpp.texi: Document -x and -std options; explain that -lang
is no longer supported. Minor related corrections.
Alexandre Oliva [Mon, 17 May 1999 23:07:40 +0000 (23:07 +0000)]
Makefile.in (stmp-fixproto): Pass location of mkinstalldirs to fixproto.
* Makefile.in (stmp-fixproto): Pass location of mkinstalldirs to
fixproto.
* fixproto: Avoid unportable constructs such as `basename' and
`mkdir -p'. Use mkinstalldirs from the environment if `mkdir -p'
fails.
parse.y (statement_nsi:): Pop `for' statement block.
Mon May 17 18:01:40 1999 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (statement_nsi:): Pop `for' statement block.
(java_complete_lhs): Labelled blocks containing no statement are
marked as completing normally.
(Part of the previous check-in, where the generated parse.c was
forgotten.)
* cp-tree.def (TEMPLATE_ID_EXPR): Update documentation.
* decl.c (grokfndecl): Don't allow inline declarations of friend
template specializations, or friend template specializations with
default arguments.
* pt.c (tsubst): Handle substitution into array types that does
not yield a fixed upper bound, even when not processing a
template.
(tsubst_copy): Deal with the fact that the second operand to a
TEMPLATE_ID_EXPR may be NULL_TREE, a TREE_LIST, or a TREE_VEC.
* search.c (marked_pushdecls_p): Don't descend into
TEMPLATE_TYPE_PARMs and the like.
(unmarked_pushdecls_p): Likewise.
Mark Mitchell [Mon, 17 May 1999 07:42:26 +0000 (07:42 +0000)]
call.c (build_over_call): Don't throw away initializations/copies of empty classes...
* call.c (build_over_call): Don't throw away
initializations/copies of empty classes; use MODIFY_EXPR and
INIT_EXPR as for non-empty classes.
* class.c (finish_struct_1): Put the padding byte for an empty
class on the TYPE_NONCOPIED_PARTS list for the class.
Mark Mitchell [Mon, 17 May 1999 07:21:14 +0000 (07:21 +0000)]
tree.def (TYPE_NONCOPIED_PARTS): Revise documentation to match reality.
* tree.def (TYPE_NONCOPIED_PARTS): Revise documentation to match
reality.
* expr.c (init_noncopied_parts): Don't generate initializers for
parts that don't need them.
Jan Hubicka [Mon, 17 May 1999 02:31:35 +0000 (04:31 +0200)]
reg-stack.c: Do not emit pop insns after cc0 setter.
* reg-stack.c: Do not emit pop insns after cc0 setter.
(emit_pop_insn): Do not emit insn in case WHEN is NULL.
(compare_for_stack_reg): Update REG_DEAD note and
do not emit push insn.
* i386.c: (output_float_compare): Handle new REG_DEAD notes.
Stu Grossman [Mon, 17 May 1999 00:44:09 +0000 (00:44 +0000)]
cplus-dem.c (demangle_fund_type (near 'I' case)): Don't advance the *mangled pointer beyond the end of the string.
* cplus-dem.c (demangle_fund_type (near 'I' case)): Don't advance
the *mangled pointer beyond the end of the string. Clean up code to
match prevailing coding style.
Jason Merrill [Sun, 16 May 1999 20:40:00 +0000 (16:40 -0400)]
decl2.c (finish_objects): Don't use .?tors.* if we don't have ASM_OUTPUT_CONSTRUCTOR.
* decl2.c (finish_objects): Don't use .?tors.* if we don't have
ASM_OUTPUT_CONSTRUCTOR.
* friend.c (do_friend): Add attrlist arg. Remove support for
getting a non-decl as 'decl'.
* decl.c (grokfndecl): Remove attrlist arg. Don't set attrs or
rtl.
(grokdeclarator): Adjust.
* cp-tree.h: Adjust.
* parse.y (direct_new_declarator): Make the first one a
nonmomentary_expr, too.
* init.c (build_new): suspend_momentary while we're calculating
the size.
(build_new_1): Don't copy size.
Mark Mitchell [Sun, 16 May 1999 19:31:51 +0000 (19:31 +0000)]
cp-tree.h (permanent_p): New function.
* cp-tree.h (permanent_p): New function.
* init.c (build_new_1): Use mapcar, not copy_node, to copy a
possibly complex tree node.
* tree.c (mapcar): Adjust comments, and follow coding standards in
conditional.
(permanent_p): New function.