J"orn Rennecke [Thu, 17 Dec 1998 00:29:00 +0000 (00:29 +0000)]
* loop.c (combine_givs_used_by_other): Don't depend on n_times_set.
From-SVN: r24351
Jeffrey A Law [Thu, 17 Dec 1998 00:25:11 +0000 (00:25 +0000)]
* config.sub: Handle hppa2.0.
From-SVN: r24350
Jeff Law [Wed, 16 Dec 1998 22:24:51 +0000 (15:24 -0700)]
dummy import to prevent merge lossage
From-SVN: r24349
Per Bothner [Wed, 16 Dec 1998 17:44:49 +0000 (17:44 +0000)]
* parse.y (create_interface): Remove bogus test.
From-SVN: r24348
Nick Clifton [Wed, 16 Dec 1998 17:34:48 +0000 (17:34 +0000)]
Ensure that last optimisation level set overrides any previous levels.
From-SVN: r24347
Per Bothner [Wed, 16 Dec 1998 17:01:53 +0000 (17:01 +0000)]
jcf-parse.c (get_constant): Set TREE_TYPE for string constants.
�
* jcf-parse.c (get_constant): Set TREE_TYPE for string constants.
(HANDLE_CONSTANTVALUE): If flag_emit_class_files, call get_constant.
From-SVN: r24346
Tom Tromey [Wed, 16 Dec 1998 15:53:13 +0000 (15:53 +0000)]
* parse-scan.y (qualified_name): Use correct sprintf format.
From-SVN: r24345
Mark Mitchell [Wed, 16 Dec 1998 15:51:21 +0000 (15:51 +0000)]
class.c (resolve_address_of_overloaded_function): Do conversion to correct type here, rather than ...
* class.c (resolve_address_of_overloaded_function): Do conversion
to correct type here, rather than ...
(instantiate_type): Here.
* cp-tree.h (DECL_TEMPLATE_PARM_P): New macro.
(DECL_TEMPLATE_TEMPLATE_PARM_P): Use it.
(decl_template_parm_p): Remove.
* decl.c (pushdecl): Don't set DECL_CONTEXT for a template
paramter.
* lex.c (do_identifier): Use DECL_TEMPLATE_PARM_P.
(push_inline_template_parms_recursive): Set it.
(decl_template_parm_p): Remove.
(check_template_shadow): Use DECL_TEMPLATE_PARM_P.
(process_template_parm): Set it.
From-SVN: r24344
Dave Brolley [Wed, 16 Dec 1998 13:38:33 +0000 (08:38 -0500)]
lang-specs.h: Pass -MD, -MMD and -MG to cc1obj if configured with cpplib.
Wed Dec 16 16:33:04 1998 Dave Brolley <brolley@cygnus.com>
* objc/lang-specs.h: Pass -MD, -MMD and -MG to cc1obj if configured with
cpplib.
* cpplib.c (cpp_start_read): If in_fname is not initialized, try to
initialize it using fname.
From-SVN: r24343
Dave Brolley [Wed, 16 Dec 1998 13:38:14 +0000 (13:38 +0000)]
lang-specs.h (default_compilers): Pass -MD, -MMD and -MG to cc1plus if configured with cpplib.
Wed Dec 16 16:33:58 1998 Dave Brolley <brolley@cygnus.com>
* lang-specs.h (default_compilers): Pass -MD, -MMD and -MG to cc1plus
if configured with cpplib.
From-SVN: r24342
Dave Brolley [Wed, 16 Dec 1998 13:37:08 +0000 (08:37 -0500)]
lang-specs.h: Pass -MD, -MMD and -MG to cc1obj if configured with cpplib.
Wed Dec 16 16:33:04 1998 Dave Brolley <brolley@cygnus.com>
* objc/lang-specs.h: Pass -MD, -MMD and -MG to cc1obj if configured with
cpplib.
From-SVN: r24341
Zack Weinberg [Wed, 16 Dec 1998 13:23:47 +0000 (13:23 +0000)]
cpplib.c (do_include): Treat #include_next in the primary source file as #include plus warning.
1998-12-16 Zack Weinberg <zack@rabi.phys.columbia.edu>
* cpplib.c (do_include): Treat #include_next in the
primary source file as #include plus warning. Treat
#include_next in a file included by absolute path as an
error. fp == CPP_NULL_BUFFER is a fatal inconsistency.
From-SVN: r24340
Kaveh R. Ghazi [Wed, 16 Dec 1998 09:34:57 +0000 (09:34 +0000)]
cccp.c: Don't define MIN/MAX anymore.
* cccp.c: Don't define MIN/MAX anymore.
* cpplib.c: Likewise.
* machmode.h: Likewise.
* system.h: Provide definitions for MIN/MAX.
From-SVN: r24339
Jeff Law [Wed, 16 Dec 1998 00:45:16 +0000 (17:45 -0700)]
Daily bump.
From-SVN: r24338
Zack Weinberg [Tue, 15 Dec 1998 22:50:27 +0000 (22:50 +0000)]
* fix-header.c: Don't define xstrdup here.
From-SVN: r24337
Jeffrey A Law [Tue, 15 Dec 1998 22:44:50 +0000 (22:44 +0000)]
* mn10200.md (addsi3 expander): Use "nonmemory_operand" for operand 2.
From-SVN: r24336
J"orn Rennecke [Tue, 15 Dec 1998 21:13:42 +0000 (21:13 +0000)]
loop.c (consec_sets_giv): New argument last_consec_insn.
* loop.c (consec_sets_giv): New argument last_consec_insn.
(strength_reduce): Provide / use it.
From-SVN: r24335
Jeff Law [Tue, 15 Dec 1998 20:53:34 +0000 (13:53 -0700)]
Fix dumb thinkos in last change.
From-SVN: r24334
Michael Hayes [Tue, 15 Dec 1998 20:31:18 +0000 (20:31 +0000)]
loop.h (loop_info): New field 'vtop'.
* loop.h (loop_info): New field 'vtop'.
* loop.c (check_dbra_loop): Use loop_info->vtop rather than
scanning loop for vtop.
* unroll.c (subtract_reg_term, find_common_reg_term): New functions.
(loop_iterations): Use them to determine if loop has a constant
number of iterations. Set loop_info->vtop. Don't subtract
common reg term from initial_value and final_value if have a
do-while loop.
From-SVN: r24333
Mark Mitchell [Tue, 15 Dec 1998 13:59:57 +0000 (13:59 +0000)]
decl.c (poplevel): Make sure ns_binding is initialized.
1998-12-15 Mark Mitchell <mark@markmitchell.com>
* decl.c (poplevel): Make sure ns_binding is initialized.
From-SVN: r24332
Jeffrey A Law [Tue, 15 Dec 1998 13:30:41 +0000 (13:30 +0000)]
* mn10300.md (bset, bclr): Operand 0 is a read/write operand.
From-SVN: r24331
Jeffrey A Law [Tue, 15 Dec 1998 12:53:12 +0000 (12:53 +0000)]
mn10200.md (abssf2, negsf2): New expanders.
* mn10200.md (abssf2, negsf2): New expanders.
* mn10300.md (absdf2, abssf2, negdf2, negsf2): New expanders.
From-SVN: r24330
Mark Mitchell [Tue, 15 Dec 1998 12:49:05 +0000 (12:49 +0000)]
decl.c (finish_function): Undo inadvertant change in previous patch.
* decl.c (finish_function): Undo inadvertant change in previous
patch.
From-SVN: r24329
Nick Clifton [Tue, 15 Dec 1998 11:56:36 +0000 (11:56 +0000)]
Cope with inlining functions which return a multiword CONCAT value
From-SVN: r24328
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