Zack Weinberg [Tue, 15 Dec 1998 11:23:27 +0000 (11:23 +0000)]
cppalloc.c: Add xstrdup here.
1998-12-15 Zack Weinberg <zack@rabi.phys.columbia.edu>
* cppalloc.c: Add xstrdup here.
* cpplib.h: Remove savestring prototype.
* cpplib.c: Remove savestring function. s/savestring/xstrdup/
throughout.
* cppfiles.c: s/savestring/xstrdup/ throughout.
From-SVN: r24327
Zack Weinberg [Tue, 15 Dec 1998 11:17:06 +0000 (11:17 +0000)]
cpplib.c: Make all directive handlers read their own arguments.
1998-12-14 00:56 -0500 Zack Weinberg <zack@rabi.phys.columbia.edu>
* cpplib.c: Make all directive handlers read their own
arguments.
(struct directive): Remove last two arguments from FUNC
member prototype. Remove `command_reads_line' member
entirely.
(directive_table): Remove initializations of
command_reads_line flag. Pretty-print.
(eval_if_expression, do_define, do_line, do_include,
do_undef, do_error, do_pragma, do_ident, do_if, do_xifdef,
do_else, do_elif, do_sccs, do_assert, do_unassert,
do_warning): Take only two args.
(cpp_define): Call do_define with two args and the text to
define stuffed into a buffer.
(make_assertion): Call do_assert with two args.
(handle_directive): Call do_line with two args. Call
kt->func with two args. Remove command_reads_line
processing.
(do_define, do_undef, do_error, do_warning, do_pragma,
do_sccs): Read the rest of the line here.
(do_ident): Gobble rest of line, as cccp does.
(cpp_undef): New function.
(cpp_start_read): Call cpp_undef instead of do_undef.
From-SVN: r24326
Zack Weinberg [Tue, 15 Dec 1998 11:09:16 +0000 (11:09 +0000)]
cpphash.h (union hash_value): Remove `keydef' member, add a `struct hashnode *aschain' member for #assert.
1998-12-15 Zack Weinberg <zack@rabi.phys.columbia.edu>
* cpphash.h (union hash_value): Remove `keydef' member, add a
`struct hashnode *aschain' member for #assert.
* cpplib.c (struct tokenlist_list, struct
assertion_hashnode): Delete structure definitions.
(assertion_install, assertion_lookup, delete_assertion,
check_assertion, compare_token_lists, reverse_token_list,
read_token_list, free_token_list): Delete functions.
(parse_assertion): New function.
(cpp_cleanup): Don't destroy the assertion_hashtable.
(do_assert): Gut and rewrite. #assert foo (bar) places
entries for `#foo' and `#foo(bar)' in the macro hash table,
type T_ASSERT. The value union's `aschain' member is used
to chain all answers for a given predicate together.
(do_unassert): Also rewritten. Take an un-asserted
answer off the chain from its predicate and call
delete_macro on the hashnode, or walk a predicate chain
calling delete_macro on all the entries.
(cpp_read_check_assertion): Simply call parse_assertion to
get the canonical assertion name, and look that up in the
hash table.
* cpplib.h (ASSERTION_HASHNODE,ASSERTION_HASHSIZE,assertion_hashtab):
Removed.
* cpphash.c (install): Use bcopy instead of an explicit loop
to copy the macro name.
* cppexp.c (cpp_lex): Convert the result of
cpp_read_check_assertion to a `struct operation' directly;
don't go through parse_number.
From-SVN: r24325
J"orn Rennecke [Tue, 15 Dec 1998 10:31:52 +0000 (10:31 +0000)]
loop.h (struct induction): Delete times_used member.
* loop.h (struct induction): Delete times_used member.
* loop.c (n_times_set): Rename to set_in_loop. Changed all users.
(n_times_used): Rename to n_times_set. Changed all users.
(scan_loop): Free reg_single_usage before strength reduction.
(record_giv, combine_givs): Remove handling of times_used member.
(combine_givs_used_once): Rename to:
(combine_givs_used_by_other) . Changed all callers.
From-SVN: r24324
Tom Tromey [Tue, 15 Dec 1998 09:44:14 +0000 (09:44 +0000)]
gjavah.c (print_field_info): Changed how most negative number is printed.
* gjavah.c (print_field_info): Changed how most negative number is
printed.
From-SVN: r24323
Alexandre Oliva [Tue, 15 Dec 1998 06:47:22 +0000 (06:47 +0000)]
* g++.old-deja/g++.other/conv5.C: New test.
From-SVN: r24320
Jason Merrill [Tue, 15 Dec 1998 01:48:48 +0000 (01:48 +0000)]
dwarf2out.c (gen_struct_or_union_type_die): Check AGGREGATE_TYPE_P instead of TREE_CODE_CLASS == 't'.
* dwarf2out.c (gen_struct_or_union_type_die): Check AGGREGATE_TYPE_P
instead of TREE_CODE_CLASS == 't'.
(gen_type_die): Likewise.
(scope_die_for): Ignore FUNCTION_TYPE "scopes".
From-SVN: r24319
Jeff Law [Tue, 15 Dec 1998 00:45:07 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r24318
Per Bothner [Mon, 14 Dec 1998 19:22:30 +0000 (11:22 -0800)]
parse.y (fold_constant_for_init): New function.
* parse.y (fold_constant_for_init): New function.
(resolve_expression_name): Don't replace static final
constant-initialized fields by its value.
(java_complete_lhs): New. Same as java_complete_tree, except does
not replace static final constant-initialized fields by their values.
(register_fields): If there is an initializer, set DECL_INITIAL and
MODIFY_EXPR_FROM_INITIALIZATION_P.
(java_complete_tree): For MODIFY_EXPR, use java_complete_lhs for lhs.
Only call patch_initialized_static_field if
MODIFY_EXPR_FROM_INITIALIZATION_P.
(patch_initialized_static_field): If not valid constant, clear
DECL_INITIAL.
* parse.y (lookup_field_wrapper): Fix thinko.
* parse.y (java_complete_tree): In EXPR_WITH_FILE_LOCATION,
set and restore global lineno.
From-SVN: r24317
Per Bothner [Mon, 14 Dec 1998 19:22:28 +0000 (11:22 -0800)]
parse.y (fold_constant_for_init): New function.
d
* parse.y (fold_constant_for_init): New function.
(resolve_expression_name): Don't replace static final
constant-initialized fields by its value.
(java_complete_lhs): New. Same as java_complete_tree, except does
not replace static final constant-initialized fields by their values.
(register_fields): If there is an initializer, set DECL_INITIAL and
MODIFY_EXPR_FROM_INITIALIZATION_P.
(java_complete_tree): For MODIFY_EXPR, use java_complete_lhs for lhs.
Only call patch_initialized_static_field if
MODIFY_EXPR_FROM_INITIALIZATION_P.
(patch_initialized_static_field): If not valid constant, clear
DECL_INITIAL.
* parse.y (lookup_field_wrapper): Fix thinko.
* parse.y (java_complete_tree): In EXPR_WITH_FILE_LOCATION,
set and restore global lineno.
From-SVN: r24316
Jim Wilson [Mon, 14 Dec 1998 16:30:48 +0000 (16:30 +0000)]
Eliminate compiler warnings.
* real.c (endian): Disable last change unless
HOST_BITS_PER_WIDE_INT is greater than 32.
From-SVN: r24315
Mark Mitchell [Mon, 14 Dec 1998 15:35:40 +0000 (15:35 +0000)]
class.c (pushclass): Tweak handling of class-level bindings.
* class.c (pushclass): Tweak handling of class-level bindings.
(resolve_address_of_overloaded_function): Update pointer-to-member
handling.
(instantiate_type): Likewise.
* cvt.c (cp_convert_to_pointer): Likewise.
* decl.c (pop_binding): Take the DECL to pop, not just the name.
Deal with `struct stat' hack.
(binding_level): Add to documentation.
(push_binding): Clear BINDING_TYPE.
(add_binding): New function.
(push_local_binding): Use it.
(push_class_binding): Likewise.
(poplevel): Adjust calls to pop_binding.
(poplevel_class): Likewise.
(pushdecl): Adjust handling of TYPE_DECLs; add bindings for hidden
declarations to current binding level.
(push_class_level_binding): Likewise.
(push_overloaded_decl): Adjust handling of OVERLOADs in local
bindings.
(lookup_namespace_name): Don't crash when confronted with a
TEMPLATE_DECL.
(lookup_name_real): Do `struct stat' hack in local binding
contexts.
(build_ptrmemfunc_type): Adjust documentation.
(grokdeclarator): Don't avoid building real array types when
processing templates unless really necessary.
(finish_method): Adjust calls to pop_binding.
* decl2.c (reparse_absdcl_as_expr): Recursively call ourselves,
not reparse_decl_as_expr.
(build_expr_from_tree): Deal with a template-id as the function to
call in a METHOD_CALL_EXPR.
* pt.c (convert_nontype_argument): Tweak pointer-to-member handling.
(maybe_adjust_types_For_deduction): Don't do peculiar things with
METHOD_TYPEs here.
(resolve_overloaded_unification): Handle COMPONENT_REFs. Build
pointer-to-member types where necessary.
* tree.c (build_cplus_array_type_1): Don't avoid building real
array types when processing templates unless really necessary.
(build_exception_variant): Compare the exception lists correctly.
From-SVN: r24314
Tom Tromey [Mon, 14 Dec 1998 15:32:49 +0000 (15:32 +0000)]
gjavah.c (print_field_info): If value to print is the smallest value of its size...
* gjavah.c (print_field_info): If value to print is the smallest
value of its size, then print as hex to avoid later warnings from
C++ compiler.
From-SVN: r24313
Mark Mitchell [Mon, 14 Dec 1998 15:11:43 +0000 (15:11 +0000)]
Update test
From-SVN: r24312
Andrew MacLeod [Mon, 14 Dec 1998 14:19:48 +0000 (14:19 +0000)]
output.h (force_data_section): New prototype.
* output.h (force_data_section): New prototype.
* varasm.c (force_data_section): New function to force the
data section, regardless of what in_section thinks.
* dwarf2out.c (output_call_frame_info): Call force_data_section
since varasm may not realize we've changes sections.
From-SVN: r24311
Nick Clifton [Mon, 14 Dec 1998 14:13:26 +0000 (14:13 +0000)]
Delete REG_RETVAL and REG_LIBCALL notes after completeing reload
From-SVN: r24310
Tom Tromey [Mon, 14 Dec 1998 11:25:19 +0000 (11:25 +0000)]
gjavah.c (decompile_method): Decompile `return null'.
* gjavah.c (decompile_method): Decompile `return null'.
(process_file): Generate `#pragma interface'.
(method_declared): New global.
(print_method_info): Set it.
(HANDLE_CODE_ATTRIBUTE): Only print it method_declared set.
(print_method_info): Handle abstract methods.
From-SVN: r24309
Nick Clifton [Mon, 14 Dec 1998 09:35:58 +0000 (09:35 +0000)]
Fix typo.
From-SVN: r24308
Kaveh R. Ghazi [Mon, 14 Dec 1998 07:01:03 +0000 (07:01 +0000)]
choose-temp.c: Don't check IN_GCC anymore.
* choose-temp.c: Don't check IN_GCC anymore.
* floatformat.c (floatformat_from_double): Use `const', not `CONST'.
* memchr.c (memchr): Likewise.
* memcpy.c (memcpy): Likewise.
* memmove.c (memmove): Likewise.
* mkstemp.c: Don't check IN_GCC anymore.
* pexecute.c: Likewise.
* splay-tree.c: Likewise.
* strchr.c (strchr): Use `const', not `CONST'.
* strrchr.c (strrchr): Likewise.
* strtol.c (strtol): Likewise.
* strtoul.c (strtoul): Likewise.
From-SVN: r24307
Kaveh R. Ghazi [Mon, 14 Dec 1998 06:55:07 +0000 (06:55 +0000)]
demangle.h: Don't check IN_GCC anymore.
* demangle.h: Don't check IN_GCC anymore.
* splay-tree.h: Likewise.
From-SVN: r24306
Jeff Law [Mon, 14 Dec 1998 00:45:02 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r24305
Jeff Law [Mon, 14 Dec 1998 00:42:39 +0000 (17:42 -0700)]
rtl.h (multiple_sets): Fix prototype.
* rtl.h (multiple_sets): Fix prototype.
* rtlanal.c (multiple_sets): Fix return type.
From-SVN: r24304
Jeffrey A Law [Mon, 14 Dec 1998 00:42:38 +0000 (00:42 +0000)]
rtl.h (multiple_sets): Fix prototype.
�
* rtl.h (multiple_sets): Fix prototype.
* rtlanal.c (multiple_sets): Fix return type.
From-SVN: r24303
Jason Merrill [Sun, 13 Dec 1998 18:56:43 +0000 (13:56 -0500)]
new
From-SVN: r24302
Jason Merrill [Sun, 13 Dec 1998 18:55:48 +0000 (13:55 -0500)]
regen
From-SVN: r24301
Per Bothner [Sun, 13 Dec 1998 17:51:06 +0000 (09:51 -0800)]
parse.y (patch_method_invocation): If class_decl is null (e.g.
* parse.y (patch_method_invocation): If class_decl is null
(e.g. an array type), use original type.
* parse.y (check_thrown_exceptions): Temporary hack to suppress
errors about uncaught exception from clone (of array, specifically).
From-SVN: r24300
Per Bothner [Sun, 13 Dec 1998 17:51:04 +0000 (09:51 -0800)]
parse.y (patch_method_invocation): If class_decl is null (e.g.
d
* parse.y (patch_method_invocation): If class_decl is null
(e.g. an array type), use original type.
* parse.y (check_thrown_exceptions): Temporary hack to suppress
errors about uncaught exception from clone (of array, specifically).
From-SVN: r24299
Per Bothner [Sun, 13 Dec 1998 17:51:02 +0000 (09:51 -0800)]
parse.y (patch_method_invocation): If class_decl is null (e.g.
�
* parse.y (patch_method_invocation): If class_decl is null
(e.g. an array type), use original type.
* parse.y (check_thrown_exceptions): Temporary hack to suppress
errors about uncaught exception from clone (of array, specifically).
From-SVN: r24298
Tom Tromey [Sun, 13 Dec 1998 15:24:48 +0000 (15:24 +0000)]
gjavah.c (decompile_method): Handle all types of `return' opcode.
* gjavah.c (decompile_method): Handle all types of `return'
opcode. Decompile `return this' and `return'.
(method_access): New global.
(print_method_info): Set it.
(decompile_method): Don't decompile a synchronized method.
From-SVN: r24297
Mark Mitchell [Sun, 13 Dec 1998 14:46:07 +0000 (14:46 +0000)]
cp-tree.def (CPLUS_BINDING): Update documentation.
* cp-tree.def (CPLUS_BINDING): Update documentation.
* cp-tree.h (LOCAL_BINDING_P): New macro.
(lang_identifier): Rename local_value to bindings.
(tree_binding): Make `scope' of type `void*', not `tree'.
(BINDING_SCOPE): Update documentation.
(IDENTIFIER_LOCAL_VALUE): Remove.
(IDENTIFIER_CLASS_VALUE): Document.
(IDENTIFIER_BINDING): New macro.
(IDENTIFIER_VALUE): Likewise.
(TIME_IDENTIFIER_TIME): Likewise.
(TIME_IDENTIFIER_FILEINFO): Likewise.
(IMPLICIT_TYPENAME_P): Likewise.
(set_identifier_local_value): Remove.
(push_local_binding): New function.
(push_class_binding): Likewise.
* class.c (pushclass): Update comments; use push_class_binding.
* decl.c (set_identifier_local_value_with_scope): Remove.
(set_identifier_local_value): Likewise.
(push_binding): New function.
(pop_binding): Likewise.
(binding_level): Update documentation. Remove shadowed.
(BINDING_LEVEL): New macro.
(free_binding_nodes): New variable.
(poplevel): Adjust for new name-lookup scheme. Don't mess up
BLOCK_VARs when doing for-scope extension. Remove effectively
dead code.
(pushlevel_class): Tweak formatting.
(poplevel_class): Adjust for new name-lookup scheme.
(print_binding_level): Likewise.
(store_bindings): Likewise.
(pushdecl): Likewise.
(pushdecl_class_level): Likewise.
(push_class_level_binding): Likewise.
(push_overloaded_decl): Update comments. Adjust for new
name-lookup scheme.
(lookup_name_real): Likewise.
(lookup_name_current_level): Likewise.
(cp_finish_decl): Likewise.
(require_complete_types_for_parms): Likewise. Remove misleading
#if 0'd code.
(grok_parms): Likewise. Don't call
require_complete_types_for_parms here.
(grok_ctor_properties): Don't treat templates as copy
constructors.
(grop_op_properties): Or as assignment operators.
(start_function): Document. Adjust for new name-lookup scheme.
(finish_function): Likewise.
* decl2.c (do_local_using_decl): Use push_local_binding.
* lex.c (begin_definition_of_inclass_inline): New function, split
out from ...
(do_pending_inlines): Here, and ...
(process_next_inline): Here.
(get_time_identifier): Use TIME_IDENTIFIER_* macros.
(init_filename_times): Likewise.
(extract_interface_info): Likewise.
(ste_typedecl_interface_info): Likewise.
(check_newline): Likewise.
(dump_time_statistics): Likewise.
(handle_cp_pragma): Likewise.
(do_identifier): Adjust for new name-lookup scheme.
* parse.y (function_try_block): Return ctor_initializer_opt value.
(fndef): Use it.
(fn.defpen): Pass appropriate values to start_function.
(pending_inline): Use functor_try_block value, and pass
appropriate values to finish_function.
* pt.c (is_member_template): Update documentation; remove handling
of FUNCTION_DECLs. As per name, this function should deal only in
TEMPLATE_DECLs.
(decl_template_parm_p): Change name of olddecl parameter to decl.
(check_template_shadow): Adjust for new name-lookup scheme.
(lookup_template_class): Likewise.
(tsubst_decl): Tweak so as not to confuse member templates with
copy constructors and assignment operators.
(unify): Handle UNION_TYPEs.
* ptree.c (print_lang_identifier): Adjust for new name-lookup scheme.
(lang_print_xnode): Adjust for new name-lookup scheme.
* typeck.c (mark_addressable): Likewise.
(c_expand_return): Likewise.
From-SVN: r24296
Tom Tromey [Sun, 13 Dec 1998 13:29:08 +0000 (13:29 +0000)]
jcf-reader.c (jcf_parse_one_method): Recognize HANDLE_END_METHOD.
* jcf-reader.c (jcf_parse_one_method): Recognize
HANDLE_END_METHOD.
* gjavah.c (HANDLE_END_METHOD): New macro.
(HANDLE_CODE_ATTRIBUTE): New macro.
(decompile_method): New function.
(print_method_info): Don't print `;\n' at end of function decl.
Include java-opcodes.h.
(decompiled): New global.
From-SVN: r24295
Jeffrey A Law [Sun, 13 Dec 1998 12:44:02 +0000 (05:44 -0700)]
Bump for snapshot
From-SVN: r24293
Jeffrey A Law [Sun, 13 Dec 1998 01:05:29 +0000 (18:05 -0700)]
Bump for snapshot
From-SVN: r24292
J"orn Rennecke [Sun, 13 Dec 1998 00:59:38 +0000 (00:59 +0000)]
rtl.h (recompute_reg_usage): Add second argument.
* rtl.h (recompute_reg_usage): Add second argument.
* flow.c (recompute_reg_usage): Likewise.
* toplev.c (rest_of_compilation): Supply second argument to
recompute_reg_usage.
From-SVN: r24291
Jeff Law [Sun, 13 Dec 1998 00:45:32 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r24290
Manfred Hollstein [Sat, 12 Dec 1998 23:43:59 +0000 (23:43 +0000)]
* protoize.c (fputs): Wrap extern declaration in #ifndef fputs.
From-SVN: r24289
Jeffrey A Law [Sat, 12 Dec 1998 23:32:52 +0000 (23:32 +0000)]
t-m68kelf (MULTILIB_OPTIONS): Add mcpu32.
* m68k/t-m68kelf (MULTILIB_OPTIONS): Add mcpu32.
(MULTILIB_MATCHES): -m68332 now uses mcpu32 libraries, not m68000.
(MULTILIB_EXCEPTIONS): Don't build 68881 libraries for m68000,
mcpu32 or m5200.
From-SVN: r24288
J"orn Rennecke [Sat, 12 Dec 1998 23:26:22 +0000 (23:26 +0000)]
reload1.c (compute_use_by_pseudos): Allow reg_renumber[regno] < 0 after reload.
* reload1.c (compute_use_by_pseudos): Allow reg_renumber[regno] < 0
after reload.
From-SVN: r24287
Jeffrey A Law [Sat, 12 Dec 1998 23:21:30 +0000 (23:21 +0000)]
* i386/next.h (ASM_OUTPUT_ALIGN): Use 0x90 for fill character.
From-SVN: r24285
Jeffrey A Law [Sat, 12 Dec 1998 23:03:54 +0000 (23:03 +0000)]
rtlanal.c (multiple_sets): New function.
* rtlanal.c (multiple_sets): New function.
* rtl.h (multiple_sets): Declare it.
* local-alloc.c (wipe_dead_reg): Use it.
* global.c (global_conflicts): Likewise.
Should fix the m68k bootstrap problems.
From-SVN: r24283
Mark Mitchell [Sat, 12 Dec 1998 22:12:02 +0000 (22:12 +0000)]
global.c (record_conflicts): Don't use an array of shorts to store an array of ints.
* global.c (record_conflicts): Don't use an array of shorts to
store an array of ints.
(global_conflicts): Likewise.
From-SVN: r24282
Per Bothner [Sat, 12 Dec 1998 21:48:16 +0000 (13:48 -0800)]
*** empty log message ***
From-SVN: r24281
Per Bothner [Sat, 12 Dec 1998 21:48:14 +0000 (13:48 -0800)]
Loks of changes so we can better compile from source.
8
Loks of changes so we can better compile from source. See ChangeLog.
From-SVN: r24280
Per Bothner [Sat, 12 Dec 1998 21:48:09 +0000 (13:48 -0800)]
Loks of changes so we can better compile from source.
Loks of changes so we can better compile from source. See ChangeLog.
From-SVN: r24279
Per Bothner [Sat, 12 Dec 1998 21:48:07 +0000 (13:48 -0800)]
Loks of changes so we can better compile from source.
�
Loks of changes so we can better compile from source. See ChangeLog.
From-SVN: r24278
Per Bothner [Sat, 12 Dec 1998 21:48:05 +0000 (13:48 -0800)]
Loks of changes so we can better compile from source.
Loks of changes so we can better compile from source. See ChangeLog.
From-SVN: r24277
Per Bothner [Sat, 12 Dec 1998 21:48:01 +0000 (13:48 -0800)]
Loks of changes so we can better compile from source.
0
Loks of changes so we can better compile from source. See ChangeLog.
From-SVN: r24276
Alexandre Petit-Bianco [Sat, 12 Dec 1998 20:04:37 +0000 (12:04 -0800)]
parse.y (<type_declaration>): Do maybe_generate_clinit last.
* parse.y (<type_declaration>): Do maybe_generate_clinit last.
(register_fields): If a static fields has an initializer, just
chain it on ctxp->static_initialized, and handle later.
(java_complete_expand_methods): Force <clinit> first.
(resolve_expression_name, resolve_field_access): Just get DECL_INITIAL
- it's already been completed.
(patch_initialized_static_field): New function.
(java_complete_field): Call it.
From-SVN: r24275
Alexandre Petit-Bianco [Sat, 12 Dec 1998 20:04:35 +0000 (12:04 -0800)]
parse.y (<type_declaration>): Do maybe_generate_clinit last.
�
* parse.y (<type_declaration>): Do maybe_generate_clinit last.
(register_fields): If a static fields has an initializer, just
chain it on ctxp->static_initialized, and handle later.
(java_complete_expand_methods): Force <clinit> first.
(resolve_expression_name, resolve_field_access): Just get DECL_INITIAL
- it's already been completed.
(patch_initialized_static_field): New function.
(java_complete_field): Call it.
From-SVN: r24274
Per Bothner [Sat, 12 Dec 1998 19:25:01 +0000 (11:25 -0800)]
expr.c (encode_newarray_type, [...]): New functions.
d
* expr.c (encode_newarray_type, build_new_array): New functions.
* java-tree.h: Declare build_new_array.
* jcf-write.c (patch_newarray): Use build_new_array.
* expr.c (java_lang_expand_exp): Support NEW_ARRAY_INIT.
* jcf-write.c (generate_bytecode_insns): Support NEW_ARRAY_INIT.
* parse.y (patch_new_array_init): Re-organize.
Now is passed the actual array (pointer) type of the value.
Set the type of the CONSTRUCTOR to be an ARRAY_TYPE.
(patch_array_constructor): Removed - merged into patch_new_array_init.
(java_complete_tree): Update patch_new_array_init.
* jcf-write.c (find_constant_index): New function.
(generate_bytecode_insns): Use find_constant_index.
(generate_classfile): Use find_constant_index for ConstantValue.
From-SVN: r24273
Per Bothner [Sat, 12 Dec 1998 19:24:59 +0000 (11:24 -0800)]
expr.c (encode_newarray_type, [...]): New functions.
a
* expr.c (encode_newarray_type, build_new_array): New functions.
* java-tree.h: Declare build_new_array.
* jcf-write.c (patch_newarray): Use build_new_array.
* expr.c (java_lang_expand_exp): Support NEW_ARRAY_INIT.
* jcf-write.c (generate_bytecode_insns): Support NEW_ARRAY_INIT.
* parse.y (patch_new_array_init): Re-organize.
Now is passed the actual array (pointer) type of the value.
Set the type of the CONSTRUCTOR to be an ARRAY_TYPE.
(patch_array_constructor): Removed - merged into patch_new_array_init.
(java_complete_tree): Update patch_new_array_init.
* jcf-write.c (find_constant_index): New function.
(generate_bytecode_insns): Use find_constant_index.
(generate_classfile): Use find_constant_index for ConstantValue.
From-SVN: r24272
Per Bothner [Sat, 12 Dec 1998 19:24:56 +0000 (11:24 -0800)]
expr.c (encode_newarray_type, [...]): New functions.
* expr.c (encode_newarray_type, build_new_array): New functions.
* java-tree.h: Declare build_new_array.
* jcf-write.c (patch_newarray): Use build_new_array.
* expr.c (java_lang_expand_exp): Support NEW_ARRAY_INIT.
* jcf-write.c (generate_bytecode_insns): Support NEW_ARRAY_INIT.
* parse.y (patch_new_array_init): Re-organize.
Now is passed the actual array (pointer) type of the value.
Set the type of the CONSTRUCTOR to be an ARRAY_TYPE.
(patch_array_constructor): Removed - merged into patch_new_array_init.
(java_complete_tree): Update patch_new_array_init.
* jcf-write.c (find_constant_index): New function.
(generate_bytecode_insns): Use find_constant_index.
(generate_classfile): Use find_constant_index for ConstantValue.
From-SVN: r24271
Richard Henderson [Sat, 12 Dec 1998 16:52:32 +0000 (08:52 -0800)]
alpha.c (alpha_expand_block_move): mode_for_size expects bits, not bytes.
* alpha.c (alpha_expand_block_move): mode_for_size expects
bits, not bytes. Infer extra alignment from addressof.
From-SVN: r24270
Jason Merrill [Sat, 12 Dec 1998 16:41:15 +0000 (16:41 +0000)]
decl.c (grokdeclarator): Allow field with same name as class in extern "C".
* decl.c (grokdeclarator): Allow field with same name as class
in extern "C".
* decl.c (lookup_name_real): Don't limit field lookup to types.
* class.c (check_member_decl_is_same_in_complete_scope): No error
if icv and x are the same.
* lex.c (do_identifier): Tweak error message.
From-SVN: r24269
Jeff Law [Sat, 12 Dec 1998 00:45:02 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r24268
Tom Tromey [Fri, 11 Dec 1998 11:55:15 +0000 (11:55 +0000)]
expr.c (invoke_build_dtable): Renamed dtable -> vtable.
* expr.c (invoke_build_dtable): Renamed dtable -> vtable.
* decl.c (init_decl_processing): Renamed dtable -> vtable.
* class.c (make_class_data): Renamed dtable -> vtable, and
dtable_method_count -> vtable_method_count.
From-SVN: r24267
Michael Meissner [Fri, 11 Dec 1998 11:20:41 +0000 (11:20 +0000)]
Put small uninitialized data in .sbss, not .sdata
From-SVN: r24266
Stan Cox [Fri, 11 Dec 1998 11:18:26 +0000 (11:18 +0000)]
sh.c (print_operand): lookup interrupt_handler attribute instead of relying on static variable.
* sh.c (print_operand): lookup interrupt_handler attribute instead
of relying on static variable.
* (calc_live_regs): Likewise.
* (sh_pragma_insert_attributes): Create interrupt_handler
attribute if a pragma was specified
* (sh_valid_machine_decl_attribute): Don't set static flag.
* sh.h (PRAGMA_INSERT_ATTRIBUTES): New.
From-SVN: r24265
Jeffrey A Law [Fri, 11 Dec 1998 09:28:51 +0000 (09:28 +0000)]
* g++.old-deja/g++.benjamin/p12475.C: Expect failure on mips64 targets.
From-SVN: r24264
Manfred Hollstein [Fri, 11 Dec 1998 08:32:49 +0000 (08:32 +0000)]
cccp.c: Do not #include <sys/stat.h> here; this is already done by "system.h".
�
* cccp.c: Do not #include <sys/stat.h> here; this is already done
by "system.h".
* collect2.c: Likewise.
* cpplib.h: Likewise.
* gcc.c: Likewise.
* gcov.c: Likewise.
* getpwd.c: Likewise.
* protoize.c: Likewise.
* toplev.c: Likewise.
From-SVN: r24263
Manfred Hollstein [Fri, 11 Dec 1998 08:32:40 +0000 (08:32 +0000)]
cccp.c: Do not #include <sys/stat.h> here; this is already done by "system.h".
* cccp.c: Do not #include <sys/stat.h> here; this is already done
by "system.h".
* collect2.c: Likewise.
* cpplib.h: Likewise.
* gcc.c: Likewise.
* gcov.c: Likewise.
* getpwd.c: Likewise.
* protoize.c: Likewise.
* toplev.c: Likewise.
From-SVN: r24262
Manfred Hollstein [Fri, 11 Dec 1998 08:32:37 +0000 (08:32 +0000)]
cccp.c: Do not #include <sys/stat.h> here; this is already done by "system.h".
p
* cccp.c: Do not #include <sys/stat.h> here; this is already done
by "system.h".
* collect2.c: Likewise.
* cpplib.h: Likewise.
* gcc.c: Likewise.
* gcov.c: Likewise.
* getpwd.c: Likewise.
* protoize.c: Likewise.
* toplev.c: Likewise.
From-SVN: r24261
Manfred Hollstein [Fri, 11 Dec 1998 08:27:07 +0000 (08:27 +0000)]
cpplib.h (HOST_WIDE_INT): Get definition from "machmode.h" and don't try to define it here.
�
* cpplib.h (HOST_WIDE_INT): Get definition from "machmode.h"
and don't try to define it here.
* Makefile.in (cppmain.o): Depend on machmode.h.
(cpplib.o): Likewise.
(cpperror.o): Likewise.
(cppexp.o): Likewise.
(cppfiles.o): Likewise.
(cpphash.o): Likewise.
(cppalloc.o): Likewise.
(fix-header.o): Likewise.
(scan-decls.o): Likewise.
From-SVN: r24260
Manfred Hollstein [Fri, 11 Dec 1998 08:27:02 +0000 (08:27 +0000)]
cpplib.h (HOST_WIDE_INT): Get definition from "machmode.h" and don't try to define it here.
�
* cpplib.h (HOST_WIDE_INT): Get definition from "machmode.h"
and don't try to define it here.
* Makefile.in (cppmain.o): Depend on machmode.h.
(cpplib.o): Likewise.
(cpperror.o): Likewise.
(cppexp.o): Likewise.
(cppfiles.o): Likewise.
(cpphash.o): Likewise.
(cppalloc.o): Likewise.
(fix-header.o): Likewise.
(scan-decls.o): Likewise.
From-SVN: r24259
J"orn Rennecke [Fri, 11 Dec 1998 04:59:25 +0000 (04:59 +0000)]
Approved by Jeffrey A Law:
* reload1.c (reload_combine): Use BASIC_BLOCK_LIVE_AT_START
to determine if a register is live at a jump destination.
Everything is dead at a BARRIER.
From-SVN: r24258
Jeff Law [Fri, 11 Dec 1998 00:45:15 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r24257
Zack Weinberg [Fri, 11 Dec 1998 00:14:59 +0000 (00:14 +0000)]
* gcc.c-torture/compile/981211-1.c: New test.
From-SVN: r24256
Alexandre Petit-Bianco [Thu, 10 Dec 1998 20:28:00 +0000 (20:28 +0000)]
decl.c (long_zero_node, [...]): New global variables, initialized.
Thu Dec 10 20:00:54 1998 Alexandre Petit-Bianco <apbianco@sendai.cygnus.com>
* decl.c (long_zero_node, float_zero_node, double_zero_node): New
global variables, initialized.
* java-tree.h (long_zero_node, float_zero_node, double_zero_node):
Declared new global variables.
* lex.c (java_lex): Return long_zero_node, float_zero_node,
double_zero_node, integer_zero_node upon direct matching.
* parse.y (purify_type_name): Added function prototype.
(duplicate_declaration_error_p): Consider new_type as potentially
being a incomplete type. Use purify_type_name on type string.
(method_header): saved_type: unused variable removed. Don't figure
return type if method name is invalid.
(java_complete_tree): Set CAN_COMPLETE_NORMALLY after `node' was
processed by patch_unaryop.
(patch_unaryop): Fixed typo in comment. Re-convert pre/post
increment/decrement node into its original type after binary
numeric promotion on its operands.
Fixes a bug occuring when an error occurs in constructor
declaration. Fixes a bug on ++/-- operators on non integer operands.
From-SVN: r24255
Jim Wilson [Thu, 10 Dec 1998 17:21:35 +0000 (17:21 +0000)]
Fix alpha-x-m32r-elf bugs.
* cse.c (simplify_unary_operation): Sign-extend constants when
they have the most significant bit set for the target.
* real.c (endian): Sign-extend 32 bit output values on a 64 bit
host.
* m32r/m32r.c (m32r_expand_prologue): Store pretend_size in
HOST_WIDE_INT temporary before negating it.
* m32r/m32r.md (movsi_insn+1): Use ~0xffff instead of 0xffff0000.
From-SVN: r24254
Mark Mitchell [Thu, 10 Dec 1998 15:08:45 +0000 (15:08 +0000)]
decl.c (start_enum): Use push_obstacks, not end_temporary_allocation.
* decl.c (start_enum): Use push_obstacks, not
end_temporary_allocation.
(finish_enum): Call pop_obstacks.
From-SVN: r24244
Mark Mitchell [Thu, 10 Dec 1998 15:05:29 +0000 (15:05 +0000)]
(start_enum): Use push_obstacks, not end_temporary_allocation.
(finish_enum): Call pop_obstacks.
From-SVN: r24243
Mark Mitchell [Thu, 10 Dec 1998 13:35:36 +0000 (13:35 +0000)]
class.c (instantiate_type): Return error_mark_node rather than junk.
* class.c (instantiate_type): Return error_mark_node rather than
junk.
From-SVN: r24240
Dave Brolley [Thu, 10 Dec 1998 12:09:04 +0000 (12:09 +0000)]
objc-act.c (lang_init_options): Enclose cpplib related code in #if USE_CPPLIB.
Thu Dec 10 15:05:59 1998 Dave Brolley <brolley@cygnus.com>
* objc/objc-act.c (lang_init_options): Enclose cpplib related code in
#if USE_CPPLIB.
From-SVN: r24234
Alexandre Petit-Bianco [Thu, 10 Dec 1998 11:24:46 +0000 (11:24 +0000)]
parse.y (array_initializer:): Array init operand is NULL_TREE instead of a TREE_LIST of NULL_TREEs when...
Thu Dec 10 11:02:49 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
* parse.y (array_initializer:): Array init operand is NULL_TREE
instead of a TREE_LIST of NULL_TREEs when parsing `{}'. `{,}' is
now an error. Fixed indentation problems.
(patch_string): Handle error_mark_node as an argument.
(patch_new_array_init): Fixed indentation problems.
(array_constructor_check_entry): Removed check on null wfl_value.
Return an error if wfl_value's walk returns an error.
Fixes and cleanups for array initializers.
From-SVN: r24233
Jason Merrill [Thu, 10 Dec 1998 11:07:33 +0000 (06:07 -0500)]
revert
From-SVN: r24232
Kaveh R. Ghazi [Thu, 10 Dec 1998 10:48:27 +0000 (10:48 +0000)]
collect2.h: New header file for prototypes.
* collect2.h: New header file for prototypes.
* Makefile.in (collect2.o, tlink.o): Depend on collect2.h.
* collect2.c: Include collect2.h.
* tlink.c: Likewise.
From-SVN: r24231
Jeff Law [Thu, 10 Dec 1998 00:45:02 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r24227
Jeffrey A Law [Wed, 9 Dec 1998 22:57:59 +0000 (22:57 +0000)]
* flow.c: Update some comments.
From-SVN: r24226
Mark Mitchell [Wed, 9 Dec 1998 16:20:05 +0000 (16:20 +0000)]
cp-tree.h (most_specialized_instantiation): New function.
* cp-tree.h (most_specialized_instantiation): New function.
(print_candidates): Likewise.
* class.c (validate_lhs): Remove.
(resolve_address_of_overloaded_function): New function, split out
and then substantially reworked, from ...
(instantiate_type): Use it. Simplify.
* cvt.c (convert_to_reference): Complain when caller has indicated
that's the right thing to do. Don't crash if instantiate_type
fails.
* pt.c: Substitute `parameters' for `paramters' throughout.
(print_candidates): Don't make it static.
(most_specialized_instantiation): Split out from ...
(most_specialized): Here.
From-SVN: r24225
Alexandre Petit-Bianco [Wed, 9 Dec 1998 15:50:12 +0000 (15:50 +0000)]
java-tree.def (NEW_ARRAY_INIT): New Java tree code.
Wed Dec 9 15:37:05 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
* java-tree.def (NEW_ARRAY_INIT): New Java tree code.
* lex.c (java_lex): Remember column position before advancing one
token. Retain location information on OCB_TK.
* lex.h (typedef struct java_lc): Added new field.
* parse.h (GET_SKIP_TYPE): New macro.
(QUAL_DECL_TYPE): Redefined using GET_SKIP_TYPE.
* parse.y (build_new_array_init, patch_new_array_init,
patch_array_constructor, maybe_build_array_element_wfl,
array_constructor_check_entry): New function prototypes.
(switch_block:): Tagged <node>.
(OCB_TK): Tagged <operator>.
(array_initializer:): Installed actions.
(variable_initializer): Build location information on element if
necessary.
(switch_statement:): Fixed indentation typo.
(switch_block:): Redefined default action.
(java_complete_tree): Handle NEW_ARRAY_INIT in MODIFY_EXPR:.
(patch_assignment): Removed duplicate code.
(maybe_build_array_element_wfl, build_new_array_init,
patch_new_array_init, patch_array_constructor,
array_constructor_check_entry): New functions.
Parse and walk array initializer nodes.
From-SVN: r24224
Brendan Kehoe [Wed, 9 Dec 1998 12:53:34 +0000 (07:53 -0500)]
update old-dejagnu proc to accompany jasons 12/7 change to g++.old-deja/old-deja.exp
From-SVN: r24222
Dave Brolley [Wed, 9 Dec 1998 12:51:24 +0000 (12:51 +0000)]
lex.c (lang_init_options): Initialize cpplib.
Wed Dec 9 15:33:01 1998 Dave Brolley <brolley@cygnus.com>
* lex.c (lang_init_options): Initialize cpplib.
* decl2.c (parse_options,cpp_initialized): Removed.
(lang_decode_option): Move initialization of cpplib to
lang_init_options.
From-SVN: r24221
Dave Brolley [Wed, 9 Dec 1998 12:47:51 +0000 (07:47 -0500)]
objc-act.c (cpp_initialized): Removed.
Wed Dec 9 15:29:26 1998 Dave Brolley <brolley@cygnus.com>
* objc/objc-act.c (cpp_initialized): Removed.
(lang_init_options): Initialize cpplib.
(lang_decode_option): Move initialization of cpplib to
lang_init_options.
From-SVN: r24220
Dave Brolley [Wed, 9 Dec 1998 12:47:28 +0000 (12:47 +0000)]
c-lang.c: (parse_options,parse_in): Added.
Wed Dec 9 15:29:26 1998 Dave Brolley <brolley@cygnus.com>
* c-lang.c: (parse_options,parse_in): Added.
(lang_init_options): Initialized cpplib here.
* c-decl.c (parse_options,cpp_initialized): Removed.
(c_decode_option): Move initialization of cpplib to
lang_init_options.
From-SVN: r24219
Mark Mitchell [Wed, 9 Dec 1998 11:46:02 +0000 (11:46 +0000)]
decl.c (grokdeclarator): Update the name of the TEMPLATE_DECL...
* decl.c (grokdeclarator): Update the name of the TEMPLATE_DECL, as
well as the TYPE_DECL, when a typedef name is assigned to a
previously anonymous type.
From-SVN: r24218
Joern Rennecke [Wed, 9 Dec 1998 11:41:26 +0000 (11:41 +0000)]
Typo fix in last entry.
From-SVN: r24217
J"orn Rennecke [Wed, 9 Dec 1998 11:39:17 +0000 (11:39 +0000)]
reload1.c (reload_combine, [...]): Make USE_RUID always valid.
* reload1.c (reload_combine, reload_combine_note_store):
Make USE_RUID always valid.
(reload_combine): Check if BASE is clobbered too early.
From-SVN: r24216
Nick Clifton [Wed, 9 Dec 1998 09:55:10 +0000 (09:55 +0000)]
If an insn cannot be reloaded, display it before calling abort()
From-SVN: r24210
Dave Brolley [Wed, 9 Dec 1998 09:17:52 +0000 (09:17 +0000)]
cccp.c (create_definition): Fix end of bufer logic.
Wed Dec 9 12:15:26 1998 Dave Brolley <brolley@cygnus.com>
* cccp.c (create_definition): Fix end of bufer logic.
From-SVN: r24205
Kaveh R. Ghazi [Wed, 9 Dec 1998 07:27:21 +0000 (07:27 +0000)]
except.c (duplicate_eh_handlers, [...]): Function pointer parameters changed to use the PARAMS() macro.
* except.c (duplicate_eh_handlers, rethrow_symbol_map): Function
pointer parameters changed to use the PARAMS() macro.
From-SVN: r24204
Andrew MacLeod [Wed, 9 Dec 1998 06:15:20 +0000 (06:15 +0000)]
except.h (struct handler_info): Add handler_number field
* except.h (struct handler_info): Add handler_number field
* except.c (gen_exception_label): EH labels no longer need to be
on the permanent obstack.
(get_new_handler): Set the label number field.
(output_exception_table_entry): Regenerate handler label reference
from the label number field.
(init_eh): Remove a blank line
* integrate.c (get_label_from_map): Labels no longer need to be
on the permanent obstack.
From-SVN: r24203
Jeff Law [Wed, 9 Dec 1998 00:45:05 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r24202
Alexandre Oliva [Wed, 9 Dec 1998 00:37:27 +0000 (00:37 +0000)]
* gcc.dg/ultrasp1.c: empty dg-options, avoid `long long' warnings
From-SVN: r24201
Alexandre Oliva [Wed, 9 Dec 1998 00:33:42 +0000 (00:33 +0000)]
* g++.old-deja/g++.pt/instantiate6.C: linker error, not crash
From-SVN: r24200
Jim Wilson [Tue, 8 Dec 1998 22:08:13 +0000 (22:08 +0000)]
Fix bug found by i960 simulator testing.
* i960/i960.h (CONST_COSTS, case CONST_INT): Accept power2_operand
only when OUTER_CODE is SET.
From-SVN: r24199
Franz Sirl [Tue, 8 Dec 1998 21:53:21 +0000 (21:53 +0000)]
930510-1.c: Make C9X safe.
* gcc.special/930510-1.c: Make C9X safe.
* gcc.misc-tests/gcov-1.c Similarly.
* gcc.misc-tests/gcov-2.c Similarly.
From-SVN: r24198
Jeff Law [Tue, 8 Dec 1998 21:49:03 +0000 (14:49 -0700)]
Add missing ChangeLog entry for:
* configure.in (hppa2*-*-*): Handle like hppa1.1-*-* for now.
* configure: Rebuilt.
From-SVN: r24197
J"orn Rennecke [Tue, 8 Dec 1998 14:50:03 +0000 (14:50 +0000)]
loop.c (strength_reduce): If scan_start points to the loop exit test...
* loop.c (strength_reduce): If scan_start points to the loop exit
test, be wary of subversive use of gotos inside expression statements.
Don't set maybe_multiple for a backward jump that does not
include the label under consideration into its range.
* unroll.c (biv_total_increment): Make use of maybe_multiple field.
From-SVN: r24196
J"orn Rennecke [Tue, 8 Dec 1998 14:35:18 +0000 (14:35 +0000)]
explow.c (plus_constant_wide): Don't immediately return with result of recursive call.
* explow.c (plus_constant_wide): Don't immediately return with
result of recursive call.
From-SVN: r24195
Andrew MacLeod [Tue, 8 Dec 1998 14:04:03 +0000 (14:04 +0000)]
See ChangeLog..
Tue Dec 8 15:32:56 EST 1998 Andrew MacLeod <amacleod@cygnus.com>
See ChangeLog.. These are the files that were changed:
* eh-common.h (struct eh_context): Add table_index for rethrows.
* rtl.h (enum reg_note): Add REG_EH_REGION and REG_EH_RETHROW reg notes.
* rtl.c (reg_note_name): Add strings for new reg_note enums.
* expr.h (rethrow_libfunc): New library decl.
* optabs.c (rethrow_libfunc): Initialize.
* except.h (struct eh_entry): Add new field 'rethrow_label'.
* except.c (create_rethrow_ref): New function to create a single
* flow.c (make_edges): Add different edges for rethrow calls,
* integrate.c (save_for_inline_eh_labelmap): New callback routine to
* libgcc2.c (find_exception_handler): Generalize to enable it to
* cp/except.c
* cp/exception.cc
From-SVN: r24194