law [Thu, 29 Oct 1998 00:45:02 +0000 (00:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23419
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Thu, 29 Oct 1998 00:38:31 +0000 (00:38 +0000)]
* i386.md: Change ix86_cpu == PROCESSOR_PENTIUM to TARGET_PENTIUM
(zero_extendsidi2): Use # in output template and handle completely by
splits.
(zero_extend splitters): New define_splits.
(ashiftrt_32): New pattern.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23418
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 23:08:06 +0000 (23:08 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23417
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 22:59:08 +0000 (22:59 +0000)]
* tree.c (append_random_chars): New fn.
(get_file_function_name_long): Use it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23416
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 28 Oct 1998 22:31:06 +0000 (22:31 +0000)]
* Makefile.in (cc1): Put C_OBJS, and thence @extra_c_objs@ last.
(LIBCPP_OBJS): New. Add cppulp.o.
(cppmain, fix-header): Depend on and use libcpp.a.
* configure.in (extra_c_objs, extra_cxx_objs): Use libcpp.a instead
of the individual object files.
* objc/Make-lang.in (cc1obj): Put OBJC_OBJS, and thence @extra_c_objs@,
last.
* cccp.c (user_label_prefix): New.
(main): Set it off -f*leading-underscore.
(special_symbol): Use it.
* cpplib.c (special_symbol): Likewise.
(cpp_handle_option): Handle -f*leading-underscore.
* cppulp.c: New file.
* output.h (user_label_prefix): Declare it.
* dwarf2out.c (ASM_NAME_TO_STRING): Prepend user_label_prefix.
* toplev.c (f_options, main): Handle -f*leading-underscore.
* defaults.h (ASM_OUTPUT_LABELREF): Use asm_fprintf instead of
referencing USER_LABEL_PREFIX directly.
* config/nextstep.h (ASM_OUTPUT_LABELREF): Likewise.
* m32r/m32r.h (ASM_OUTPUT_LABELREF): Likewise.
* final.c (asm_fprintf): Use user_label_prefix instead.
* arm/thumb.c (thumb_print_operand): Likewise.
* gcc.c (default_compilers): Pass -f*leading-underscore on to
cpp wherever appropriate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23415
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 28 Oct 1998 22:26:24 +0000 (22:26 +0000)]
* Makefile.in (cc1plus): Put CXX_OBJS, and thence @extra_cxx_objs@,
last.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23414
138bc75d-0d04-0410-961f-
82ee72b054a4
robertl [Wed, 28 Oct 1998 21:10:55 +0000 (21:10 +0000)]
* sco5.h (SUBTARGET_SWITCHES): Add documentation for OpenServer-
specific compiler switches.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23413
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 21:02:49 +0000 (21:02 +0000)]
* class.c (instantiate_type): Don't consider templates for a normal
match.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23412
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 20:29:09 +0000 (20:29 +0000)]
* class.c (finish_struct_1): Don't complain about non-copy
assignment ops in union members.
* class.c (build_vtable): Don't pass at_eof to import_export_vtable.
(prepare_fresh_vtable): Likewise.
(finish_struct_1): Don't call import_export_class.
* decl2.c (finish_vtable_vardecl): Do import/export stuff.
(finish_prevtable_vardecl): Lose.
(finish_file): Don't call it.
* pt.c (instantiate_class_template): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23410
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Oct 1998 20:08:34 +0000 (20:08 +0000)]
* Makefile.in (c-common.o): Depend on c-pragma.h. Use $(RTL_H) instead
of rtl.h.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23409
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Wed, 28 Oct 1998 18:00:53 +0000 (18:00 +0000)]
Warning fixes:
* gcc.c (EXTRA_SPECS, extra_specs): Introduce an intermediate
structure which has exactly the members provided by EXTRA_SPECS.
Xmalloc() the real `extra_specs', and initialize it from this
intermediate structure.
* alpha.h (EXTRA_SPECS): Revert change for missing initializers.
* mips.h (EXTRA_SPECS): Likewise.
* sparc.h (EXTRA_SPECS): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23406
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Wed, 28 Oct 1998 16:46:46 +0000 (16:46 +0000)]
Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
* function.c (purge_addressof_1): Instead of aborting when a
bitfield insertion as a replacement for (MEM (ADDRESSOF)) does not
work just put the ADDRESSOF on stack. Otherwise remember all such
successfull replacements, so that exactly the same replacements
can be made on the REG_NOTEs. Remove the special case for CALL
insns again.
(purge_addressof_replacements): New variable.
(purge_addressof): Clear it at end.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23405
138bc75d-0d04-0410-961f-
82ee72b054a4
wilson [Wed, 28 Oct 1998 14:09:31 +0000 (14:09 +0000)]
Fix DWARF1/C++ abort with member function in class nested in another function.
* dwarfout.c (dwarfout_file_scope_decl): If DECL_CONTEXT, don't abort
if pending_types is non-zero.
(dwarfout_finish): Verify pending_types is zero before finishing.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23404
138bc75d-0d04-0410-961f-
82ee72b054a4
apbianco [Wed, 28 Oct 1998 13:06:17 +0000 (13:06 +0000)]
Wed Oct 28 08:03:31 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>
* class.c (layout_class): Don't mangle <finit>, produce
__finit<class> instead. Don't verify artificial methods.
* decl.c (finit_identifier_node): New declared global.
(init_decl_processing): finit_identifier_node initialized.
* java-tree.def (CONDITIONAL_EXPR): New Java tree code.
* java-tree.h (finit_identifier_node): Declared as extern.
(struct lang_decl): New field called_constructor.
(DECL_CONSTRUCTOR_CALLS): Access macro to called_constructor.
(CLASS_HAS_FINIT_P): New macro.
(CALL_CONSTRUCTOR_P): Leading comment changed. Macro now checks
explicit constructor invocation.
(CALL_EXPLICIT_CONSTRUCTOR_P, CALL_THIS_CONSTRUCTOR_P,
CALL_SUPER_CONSTRUCTOR_P): New macros.
(write_classfile): Added prototype.
* jcf-parse.c (jcf_parse_source): Parse and remember for
generation if the file was seen on the command line.
(parse_source_file): Don't write the class file here.
(yyparse): Loop on files rewritten. Set current_jcf.
(parse_zip_file_entries): Parse class file only if it was found.
* lang.c (init_parse): Don't open command line provided filename
here.
(lang_parse): Don't set main_jcf anymore.
* parse.h (ABSTRAC_CHECK): Capitalized arguments.
(JCONSTRUCTOR_CHECK): New macro.
(JBSC_TYPE_P): New macro.
(IN_TRY_BLOCK_P, EXCEPTIONS_P): Fixed leading comment.
(COMPLETE_CHECK_OP_2): New macro.
(struct parse_ctxt): New field explicit_constructor_p.
(check_class_interface_creation): Fixed prototype indentation.
(patch_method_invocation_stmt): Prototype reflects added argument.
(patch_invoke): Likewise.
(complete_method_declaration, build_super_invocation,
verify_constructor_circularity,
build_this_super_qualified_invocation, get_printable_method_name,
patch_conditional_expr, maybe_generate_finit, fix_constructors,
verify_constructor_super, create_artificial_method,
start_artificial_method_body, end_artificial_method_body,
generate_field_initialization_code): New function prototypes.
* parse.y: Fixed leading comment
(constructor_header:, constructor_body:, block_end:): Rules tagged
<node>.
(type_declaration:): Call maybe_generate_finit.
(method_declaration:): Action for method_body: placed in new
function complete_method_declaration, called here.
(constructor_declaration:): Defined actions. Removed leading
FIXME.
(constructor_header:): New rule with action.
(constructor_body:): Rule rewritten using block_begin: and
block_end:. Defined actions.
(constructor_declarator:, explicit_constructor_invocation:):
Defined actions.
(block:): Use new rules block_begin: block_end:.
(block_begin:, block_end:): New rules and actions.
(block_statements:): Fixed error message for explicit
constructors.
(method_invocation:): Call build_this_super_qualified_invocation
if primary is `this' or `super' was seen.
(conditional_expression:): Action defined.
(extra_ctxp_pushed_p): New static global flag.
(java_parser_context_save_global): Create parser context if
necessary. Use extra_ctxp_pushed_p to remember it.
(java_parser_context_restore_global): Pop extra parser context if
one exists.
(build_array_from_name): Array on primitive types are marked
loaded.
(register_fields): Restore new name in field initializer
expression if type was altered. Non static fields initialized upon
declaration marked initialized.
(maybe_generate_finit): New function.
(maybe_generate_clinit): Use create_artificial_method,
start_artificial_method_body, end_artificial_method_body. Generate
debug info for enclosed initialization statements.
(method_header): Fixed leading comment. Check constructor
flags. Detect constructor declarations and set DECL_CONSTRUCTOR_P
accordingly.
(complete_method_declaration, constructor_circularity_msg,
verify_constructor_circularity): New functions.
(get_printable_method_name): New function.
(check_method_redefinition): Don't rename <finit> methods. Fix
declared constructor names. Error message for
constructors modified.
(java_check_regular_methods): Local variable seen_constructor
renamed saw_constructor. Skip verification on constructors. Create
default constructor with create_artificial_method.
(java_check_methods): Removed unnecessary empty line.
(create_artificial_method, start_artificial_method_body,
end_artificial_method_body): New functions.
(java_layout_classes): Changed leading comment. Reverse fields
list if necessary. Always layout java.lang.Object if being
defined.
(java_complete_expand_methods): Verify constructor circularity.
(java_complete_expand_method): Call fix_constructor on
constructors. Local variable no_ac_found removed. Restore
bindings if method body expansion failed.
(fix_constructors, verify_constructor_super,
generate_field_initialization_code): New function.
(java_expand_classes): Fixed leading comment. Write class file
here.
(resolve_expression_name): Check for illegal instance variable
usage within the argument scope of an explicit constructor
invocation.
(resolve_qualified_expression_name): Pass extra from_super flag
when invoking patch_method_invocation_stmt. New case for
conditional expression when used as a primary. Check for error
when acquiring super.
(patch_method_invocation_stmt): Added extra argument super. New
local variable is_static_flag. Set class_to_search according to
the nature of the constructor invocation. Don't add `this'
argument when expanding NEW_CLASS_EXPR. Check for illegal method
invocation within the argument scope of explicit constructor
invocation. Set is_static according to is_static_flag. Provide
extra `super' argument to patch_invoke invocation.
(patch_invoke): New argument from_super. Loop on arguments
indentation fixed. Pass from_super to invocation_mode. New switch
case INVOKE_SUPER. Fixed error message in switch default case.
Don't use CALL_CONSTRUCTOR_P but rather a test on the tree node
value.
(invocation_mode): Return INVOKE_SUPER mode when appropriate.
(lookup_method_invoke): Fixed prototypes in candidates list. Error
message takes constructors into account.
(find_applicable_accessible_methods_list): Fixed indentation.
(qualify_ambiguous_name): Take explicit constructor invocation
into account. Deal with a conditional expression as a primary to
a method call.
(java_complete_tree): Added local wfl_op3. New CONDITIONAL_EXPR
case. Added extra argument to patch_method_invocation_stmt.
Register calls made to explicit constructor `this'. Don't call
save_expr in ARRAY_REF case when emitting class files. Check for
illegal use of this when expanding explicit constructor invocation
arguments.
(complete_function_arguments): Set and reset parser context
explicit_constructor_p field value when appropriate.
(build_super_invocation, build_this_super_qualified_invocation):
New functions.
(patch_assignment): Fixed typo.
(patch_unaryop): Check on final fields occurs only when a decl
exits.
(patch_return): Take constructors into account.
(patch_conditional_expr): New function.
* typeck.c (build_java_signature): Removed unnecessary empty line.
This patch implements the conditional operator, fixes the super
invokation mode, implements most of what is required for constructors
and changes the way source files are handled by the front-end.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23403
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 11:46:03 +0000 (11:46 +0000)]
Revert
* pt.c (convert_nontype_argument): Tell instantiate_type to complain.
Do complain about overload resolution producing a non-public fn.
Fixes g++.pt/explicit75.C
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23402
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 11:44:23 +0000 (11:44 +0000)]
new
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23401
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 11:40:53 +0000 (11:40 +0000)]
fix
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23400
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 11:40:44 +0000 (11:40 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23399
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Wed, 28 Oct 1998 10:30:46 +0000 (10:30 +0000)]
Add code written by rth to generate use shifts to perform an extension if no
suitable extend patterns can be found.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23398
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Oct 1998 10:22:48 +0000 (10:22 +0000)]
* regclass.c (renumber, regno_allocated): New static variables, moved
out of allocate_reg_info.
(allocate_reg_info): Move these two variables outside the function.
Move code to free memory into new function free_reg_info.
(free_reg_info): New function, broken out of allocate_reg_info.
* toplev.c (compile_file): Call free_reg_info, not allocate_reg_info.
* rtl.h (allocate_reg_info): Don't declare.
(free_reg_info): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23397
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Oct 1998 10:12:14 +0000 (10:12 +0000)]
* Makefile.in (jcf-dump, gcjh): Link in $(LIBS) too.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23396
138bc75d-0d04-0410-961f-
82ee72b054a4
tromey [Wed, 28 Oct 1998 09:15:36 +0000 (09:15 +0000)]
* decl.c (init_decl_processing): Renamed fields.
* class.c (make_class_data): Renamed bfsize, nfields, nsfields,
interface_len, msize fields.
* class.c (make_class_data): Removed subclass_head and
subclass_next fields.
* decl.c (init_decl_processing): Removed subclass_head and
subclass_next fields.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23395
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 04:02:03 +0000 (04:02 +0000)]
* final.c (cleanup_subreg_operands): ASM_INPUTs need no treatment.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23394
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 03:40:11 +0000 (03:40 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23393
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 03:36:56 +0000 (03:36 +0000)]
* init.c (build_delete): Reset TYPE_HAS_DESTRUCTOR here.
* decl.c (finish_function): Not here.
(start_function): Do set DECL_INITIAL.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23392
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 02:38:57 +0000 (02:38 +0000)]
* toplev.c (compile_file): Temporarily revert last change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23391
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 02:33:47 +0000 (02:33 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23390
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 02:33:00 +0000 (02:33 +0000)]
* pt.c (push_template_decl_real): Complain about default template
args for enclosing classes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23389
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 01:57:15 +0000 (01:57 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23388
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 01:53:50 +0000 (01:53 +0000)]
* call.c (add_function_candidate): Treat conversion functions
as coming from the argument's class.
* cp-tree.h (DECL_CONV_FN_P): New fn.
(DECL_DESTRUCTOR_P): Also check DECL_LANGUAGE.
* class.c (add_method): Use DECL_CONV_FN_P.
* decl2.c (check_classfn): Likewise.
* error.c (dump_function_name): Likewise.
(dump_function_decl): Likewise.
* pt.c (fn_type_unification): Likewise.
* search.c (add_conversions): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23387
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Wed, 28 Oct 1998 01:39:54 +0000 (01:39 +0000)]
* c-typeck.c (convert_for_assignment): Parenthesize.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23386
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Oct 1998 00:45:02 +0000 (00:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23385
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Wed, 28 Oct 1998 00:06:22 +0000 (00:06 +0000)]
* toplev.c (compile_file): Call allocate_reg_info to free register
table memory.
* rtl.h (allocate_reg_info): Declare.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23384
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 27 Oct 1998 23:49:03 +0000 (23:49 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23383
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Oct 1998 23:48:07 +0000 (23:48 +0000)]
* jcf-write.c (emit_load_or_store): Avoid implicit int arguments.
* mangle.c (emit_unicode_mangled_name): Similarly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23382
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 27 Oct 1998 23:47:42 +0000 (23:47 +0000)]
* lex.c (do_identifier): Also generate LOOKUP_EXPR for RESULT_DECL.
* method.c (hack_identifier): Also check for using RESULT_DECL
from outer context.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23381
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Oct 1998 23:43:46 +0000 (23:43 +0000)]
* PROJECTS: Remove entry for local spilling.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23380
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Oct 1998 23:42:47 +0000 (23:42 +0000)]
* reload1.c (delete_output_reload): Avoid ambigous else.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23379
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Oct 1998 23:35:41 +0000 (23:35 +0000)]
* reload1.c (verify_initial_offsets): New function.
(reload): Call it after reload_as_needed. Also verify that the frame
size stays constant during reload_as_needed.
* i386.h (CONST_DOUBLE_OK_FOR_LETTER_P): Undo Jul 26 change.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23378
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Oct 1998 23:19:31 +0000 (23:19 +0000)]
* final.c (cleanup_subreg_operands): New function.
(final_scan_insn): Use it.
(alter_subreg): Clear the "used" field when we turn a SUBREG into
a REG.
* reload1.c (reload): Delete CLOBBER insns and also cleanup SUBREG
operands when reload has finished.
* reload.h (cleanup_subreg_operands): Declare..
* flow.c (life_analysis_1): No longer delete CLOBBER insns after
reload. Handled in reload itself.
Should fix sh, sparc and probably other problems with post-reload life pass
and scheduling interactions.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23377
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Tue, 27 Oct 1998 23:08:40 +0000 (23:08 +0000)]
* decl.c (grokdeclarator): Use type_quals, rather than constp,
consistently.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23376
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 27 Oct 1998 23:07:43 +0000 (23:07 +0000)]
fix
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23375
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Oct 1998 22:38:40 +0000 (22:38 +0000)]
THe final localized spilling patches. See the ChangeLog for details.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23374
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 27 Oct 1998 22:33:40 +0000 (22:33 +0000)]
* call.c (standard_conversion): instantiate_type here.
(reference_binding): And here.
(implicit_conversion): Not here.
(build_op_delete_call): No need to cons up an OVERLOAD.
* cvt.c (cp_convert_to_pointer): instantiate_type here.
(convert_to_reference): And here.
* decl.c (grok_reference_init): Not here.
(grokparms): Or here.
* typeck2.c (digest_init): Or here.
* typeck.c (decay_conversion): Take the address of overloaded
functions, too.
(require_instantiated_type): Lose.
(convert_arguments): Don't handle unknown types here.
(build_c_cast): Likewise.
(build_binary_op): Gut.
(build_conditional_expr): Don't require_instantiated_type.
(build_modify_expr): Likewise.
(build_static_cast): Don't instantiate_type.
(build_reinterpret_cast): Likewise.
(build_const_cast): Likewise.
(convert_for_initialization): Likewise.
(build_ptrmemfunc): Use type_unknown_p.
(convert_for_assignment): Also do default_conversion on overloaded
functions. Hand them off to ocp_convert.
* pt.c (convert_nontype_argument): Tell instantiate_type to complain.
Do complain about overload resolution producing a non-public fn.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23373
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Tue, 27 Oct 1998 22:25:05 +0000 (22:25 +0000)]
* decl.c (grokdeclarator): Use type_quals, rather than constp,
consistently.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23372
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Tue, 27 Oct 1998 15:15:11 +0000 (15:15 +0000)]
Updated sources with changes from devo.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23369
138bc75d-0d04-0410-961f-
82ee72b054a4
oliva [Tue, 27 Oct 1998 14:21:18 +0000 (14:21 +0000)]
* lib/old-dejagnu.exp (old-dejagnu): document `Additional sources'
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23368
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Tue, 27 Oct 1998 13:49:00 +0000 (13:49 +0000)]
- add comments about AIX 4.3 archive parsing bug
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23367
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Tue, 27 Oct 1998 13:26:51 +0000 (13:26 +0000)]
Ignore empty target specific options, and if -W is also specified on the
command line then display undocumented options.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23366
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Tue, 27 Oct 1998 13:23:17 +0000 (13:23 +0000)]
* collect2.c (aix64_flag): New variable.
(main, case 'b'): Parse it.
(GCC_CHECK_HDR): object magic number must match mode.
(scan_prog_file): Only check for shared object if valid header.
Print debugging if header/mode mismatch.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23365
138bc75d-0d04-0410-961f-
82ee72b054a4
nickc [Tue, 27 Oct 1998 11:13:39 +0000 (11:13 +0000)]
Appleid arm-elf contribution from Philip Blundell and merged with Catherine
Moore's work.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23364
138bc75d-0d04-0410-961f-
82ee72b054a4
amacleod [Tue, 27 Oct 1998 06:00:53 +0000 (06:00 +0000)]
* dwarfout.c (ASM_OUTPUT_DWARF_STRING_NEWLINE): ASM_OUTPUT_DWARF_STRING
has been changed to not include a newline. Use this macro instead.
(output_enumeral_list, const_value_attribute, name_attribute,
comp_dir_attribute, prototyped_attribute, producer_attribute,
inline_attribute, pure_or_virtual_attribute, output_inheritance_die,
dwarfout_file_scope_decl, generate_new_sfname_entry,
generate_macinfo_entry, dwarfout_init, dwarfout_finish): Use
ASM_OUTPUT_DWARF_STRING_NEWLINE macro.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23363
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Tue, 27 Oct 1998 02:21:59 +0000 (02:21 +0000)]
fix
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23362
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Tue, 27 Oct 1998 00:45:03 +0000 (00:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23361
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 26 Oct 1998 23:48:58 +0000 (23:48 +0000)]
* error.c (dump_decl): Deal with TEMPLATE_DECLs that are
VAR_DECLs. Handle vtables whose DECL_CONTEXT is not a type.
* class.c (finish_struct_1): Use build_cplus_array_type to build
array types.
* decl.c (init_decl_processing): Likewise.
* except.c (expand_end_eh_spec): Likewise.
* search.c (expand_upcast_fixups): Simplify very slightly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23359
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Mon, 26 Oct 1998 23:24:48 +0000 (23:24 +0000)]
* splay-tree.c: Tweak include directives to make sure declarations of
xmalloc and free are available.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23358
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 26 Oct 1998 13:35:39 +0000 (13:35 +0000)]
* combine.c (subst): Process the inputs to a parallel asm_operands
only once.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23357
138bc75d-0d04-0410-961f-
82ee72b054a4
rth [Mon, 26 Oct 1998 13:33:07 +0000 (13:33 +0000)]
* stmt.c (expand_asm_operands): Accept `=' or `+' at any position.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23356
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 12:32:06 +0000 (12:32 +0000)]
fix
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23355
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 12:00:51 +0000 (12:00 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23354
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 11:59:09 +0000 (11:59 +0000)]
* decl.c (grokdeclarator): Complain about a variable using
constructor syntax coming back null from start_decl.
Fixes g++.other/decl2.C
* friend.c (make_friend_class): Complain about trying to make
a non-class type a friend.
Fixes g++.other/friend5.C
* decl.c (grokfndecl): Set DECL_INITIAL for a defn here.
(start_function): Not here.
Fixes g++.law/friend4.C
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23353
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 26 Oct 1998 11:59:07 +0000 (11:59 +0000)]
* tm.texi (ASM_OUTPUT_MAX_SKIP_ALIGN): Document.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23352
138bc75d-0d04-0410-961f-
82ee72b054a4
brendan [Mon, 26 Oct 1998 11:47:08 +0000 (11:47 +0000)]
quickie
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23351
138bc75d-0d04-0410-961f-
82ee72b054a4
brendan [Mon, 26 Oct 1998 11:46:59 +0000 (11:46 +0000)]
tests usage of explicit in a friend decl
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23350
138bc75d-0d04-0410-961f-
82ee72b054a4
brendan [Mon, 26 Oct 1998 11:45:05 +0000 (11:45 +0000)]
* decl.c (grokdeclarator): Disallow `explicit' in a friend declaration.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23349
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 02:35:31 +0000 (02:35 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23348
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 02:35:21 +0000 (02:35 +0000)]
* typeck2.c (process_init_constructor): Only skip anonymous fields
if they are bitfields.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23347
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 02:15:41 +0000 (02:15 +0000)]
bogus
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23346
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 02:09:40 +0000 (02:09 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23345
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 02:09:03 +0000 (02:09 +0000)]
bogus
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23344
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 02:07:50 +0000 (02:07 +0000)]
* cp-tree.def (TYPEOF_TYPE): New code.
* error.c (dump_type_real): Handle it.
* pt.c (tsubst): Likewise.
* tree.c (search_tree): Likewise.
* semantics.c (finish_typeof): New fn.
* parse.y (typespec): Use it.
* cp-tree.h: Declare it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23343
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 02:07:12 +0000 (02:07 +0000)]
* typeck2.c (check_for_new_type): Only depend on pedantic for
C-style casts.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23342
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 02:03:08 +0000 (02:03 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23341
138bc75d-0d04-0410-961f-
82ee72b054a4
manfred [Mon, 26 Oct 1998 01:46:53 +0000 (01:46 +0000)]
�
* cp-tree.h (FORMAT_VBASE_NAME): Make definition unconditional.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23340
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 00:50:05 +0000 (00:50 +0000)]
up
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23339
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 00:48:20 +0000 (00:48 +0000)]
* typeck.c (convert_arguments): Don't handle pmf references
specially.
* init.c (build_member_call): Don't try to convert to the base type
if it's ambiguous.
* typeck2.c (check_for_new_type): Don't depend on pedantic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23338
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 26 Oct 1998 00:45:02 +0000 (00:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23337
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 00:42:53 +0000 (00:42 +0000)]
update
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23336
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Mon, 26 Oct 1998 00:38:03 +0000 (00:38 +0000)]
Bump for snapshot
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23334
138bc75d-0d04-0410-961f-
82ee72b054a4
jason [Mon, 26 Oct 1998 00:17:06 +0000 (00:17 +0000)]
update
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23333
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 25 Oct 1998 23:56:23 +0000 (23:56 +0000)]
8
* stmt.c (expand_fixup): Set fixup->before_jump to a
NOTE_INSN_DELETED instead of a NOTE_INSN_BLOCK_BEG.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23330
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 25 Oct 1998 23:56:22 +0000 (23:56 +0000)]
�
* stmt.c (expand_fixup): Set fixup->before_jump to a
NOTE_INSN_DELETED instead of a NOTE_INSN_BLOCK_BEG.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23329
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Sun, 25 Oct 1998 23:15:00 +0000 (23:15 +0000)]
* decl.c (grokdeclarator): Set DECL_NONCONVERTING_P for all
non-converting constructors.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23325
138bc75d-0d04-0410-961f-
82ee72b054a4
mmitchel [Sun, 25 Oct 1998 23:10:09 +0000 (23:10 +0000)]
* cplus-dem.c (gnu_special): Fix handling of virtual tables in
anonymous namespaces.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23324
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 25 Oct 1998 13:59:25 +0000 (13:59 +0000)]
�
* Make-lang.in (jv-scan$(exeext)): Add stamp-objlist to
dependency.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23318
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 25 Oct 1998 13:59:23 +0000 (13:59 +0000)]
�
* Make-lang.in (jv-scan$(exeext)): Add stamp-objlist to
dependency.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23317
138bc75d-0d04-0410-961f-
82ee72b054a4
ghazi [Sun, 25 Oct 1998 12:56:39 +0000 (12:56 +0000)]
Warning fixes:
* Makefile.in (recog.o): Depend on toplev.h.
(insn-emit.o): Depend on recog.h.
(insn-peep.o): Depend on recog.h and insn-config.h.
* combine.c (simplify_set): Remove unused variable `scratches'.
* final.c (final_scan_insn): Wrap declaration of variables `vlen'
and `idx' in macro conditional controlling their use.
* genemit.c (main): Make the generated output file include
recog.h. Don't have it declare `insn_operand_constraint', since
we get it from recog.h.
* genpeep.c (main): Make the generated output file include
insn-config.h and recog.h.
* recog.c: Include toplev.h.
(extract_insn): Remove unused variable `p'.
* regclass.c (fix_register): Add missing braces around initializer
for `what_option'.
(allocate_reg_info): Move variable `i' into the scope where it is
used. Change its type to `size_t'.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23307
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 25 Oct 1998 12:13:14 +0000 (12:13 +0000)]
�
* reload.c (push_reload): When merging reloads, make sure
that reload_in_reg and reload_in are from the same reload in
all cases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23303
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 25 Oct 1998 12:13:12 +0000 (12:13 +0000)]
�
* reload.c (push_reload): When merging reloads, make sure
that reload_in_reg and reload_in are from the same reload in
all cases.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23302
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 25 Oct 1998 11:08:59 +0000 (11:08 +0000)]
* i386/crtdll.h (CPP_PREDEFINES): Fix typo.
* i386/mingw32.h (CPP_PREDEFINES): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23292
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sun, 25 Oct 1998 00:45:02 +0000 (00:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23287
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Sat, 24 Oct 1998 14:19:32 +0000 (14:19 +0000)]
- update record_reg_classes change to be consistent with
Kenner's change to gcc.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23275
138bc75d-0d04-0410-961f-
82ee72b054a4
fx [Sat, 24 Oct 1998 09:04:09 +0000 (09:04 +0000)]
Regenerated.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23272
138bc75d-0d04-0410-961f-
82ee72b054a4
fx [Sat, 24 Oct 1998 09:03:07 +0000 (09:03 +0000)]
1998-10-24 Dave Love <d.love@dl.ac.uk>
* configure.in: Touch g2c.h in AC_OUTPUT after multilib
disturbance.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23271
138bc75d-0d04-0410-961f-
82ee72b054a4
fx [Sat, 24 Oct 1998 09:01:49 +0000 (09:01 +0000)]
Touch g2c.h in AC_OUTPUT after multilib disturbance.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23270
138bc75d-0d04-0410-961f-
82ee72b054a4
loewis [Sat, 24 Oct 1998 03:05:35 +0000 (03:05 +0000)]
* gxxint.texi: Correct documentation for n, N, Q, and B.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23269
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Sat, 24 Oct 1998 00:45:01 +0000 (00:45 +0000)]
Daily bump.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23268
138bc75d-0d04-0410-961f-
82ee72b054a4
loewis [Sat, 24 Oct 1998 00:35:31 +0000 (00:35 +0000)]
* parse.y (condition): Convert VAR_DECL from reference to indirect
reference.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23267
138bc75d-0d04-0410-961f-
82ee72b054a4
dje [Fri, 23 Oct 1998 20:51:02 +0000 (20:51 +0000)]
* loop.c (loop_has_tablejump): New variable.
(prescan_loop): Scan for it.
(insert_bct): Replace explicit scan with use of it.
* regclass.c (regclass): Restore loop variable j.
(record_reg_classes): Deterine op_types modifiers and initialize
classes[i] before matching constraints. Handle matching
constraints 5-9.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23263
138bc75d-0d04-0410-961f-
82ee72b054a4
law [Fri, 23 Oct 1998 20:34:52 +0000 (20:34 +0000)]
* flow.c (life_analysis_1): Enable "rescan" code after reload.
(propagate_block): Delete dead code after reload.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23262
138bc75d-0d04-0410-961f-
82ee72b054a4