summaryrefslogtreecommitdiffstats
path: root/gcc
Commit message (Collapse)AuthorAgeFilesLines
* 1998-10-28 16:10 -0500 Zack Weinberg <zack@rabi.phys.columbia.edu>brolley1998-10-298-913/+1273
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * c-lang.c: Declare extern char *yy_cur if USE_CPPLIB. (lang_init): Call check_newline always. * c-lex.c (init_parse) [USE_CPPLIB=1]: After calling cpp_start_read, set yy_cur and yy_lim to read from parse_in.token_buffer, so that we'll see the first #line directive. * cpplib.c (cpp_start_read): finclude the main input file before processing -include/-imacros. Process -imacros and -include separately, and handle -include by stacking a buffer for the file in question as if it'd been #included. * toplev.c (documented_lang_options) Recognize -H when USE_CPPLIB is on. 1998-10-28 16:09 -0500 Zack Weinberg <zack@rabi.phys.columbia.edu> * cpplib.c: Merge do_once into do_pragma. Break file handling code out of do_include. Move append_include_chain, deps_output, file_cleanup, redundant_include_p, import_hash, lookup_import, add_import, read_filename_string, read_name_map, open_include_file, finclude, safe_read to cppfiles.c. Move prototypes for deps_output, append_include_chain, finclude to cpplib.h. Move definition of struct file_name_list there also. * cppfiles.c: New file. Contains all the above functions broken out of cpplib.c; also hack_vms_include_specification from cccp.c and find_include_file, a new function broken out of do_include. * Makefile.in (cppmain): Depend on cppfiles.o. (fix-header): Likewise. (cppfiles.o): New target. * configure.in (--enable-c-cpplib): Add cppfiles.o to extra_c_objs. Add ../cppfiles.o to extra_cxx_objs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23424 138bc75d-0d04-0410-961f-82ee72b054a4
* Thu Oct 29 14:10:22 EST 1998 Andrew MacLeod <amacleod@cygnus.com>amacleod1998-10-292-0/+13
| | | | | | | | * except.c (emit_eh_context): Make the EH context register stay alive at -O0 so stupid.c doesn't get confused. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23423 138bc75d-0d04-0410-961f-82ee72b054a4
* * pt.c (push_template_decl_real): Generalize check for incorrectjason1998-10-292-63/+61
| | | | | | | number of template parms. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23422 138bc75d-0d04-0410-961f-82ee72b054a4
* newjason1998-10-291-0/+10
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23421 138bc75d-0d04-0410-961f-82ee72b054a4
* * emit-rtl.c (try_split): Do not try to split a BARRIER.law1998-10-292-2/+8
| | | | | | | Fixes core dump for c4x c-torture test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23420 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.law1998-10-291-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23419 138bc75d-0d04-0410-961f-82ee72b054a4
* * i386.md: Change ix86_cpu == PROCESSOR_PENTIUM to TARGET_PENTIUMlaw1998-10-292-28/+37
| | | | | | | | | | (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
* upjason1998-10-284-7/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23417 138bc75d-0d04-0410-961f-82ee72b054a4
* * tree.c (append_random_chars): New fn.jason1998-10-282-7/+72
| | | | | | | (get_file_function_name_long): Use it. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23416 138bc75d-0d04-0410-961f-82ee72b054a4
* * Makefile.in (cc1): Put C_OBJS, and thence @extra_c_objs@ last.rth1998-10-2818-125/+250
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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
* * Makefile.in (cc1plus): Put CXX_OBJS, and thence @extra_cxx_objs@,rth1998-10-282-3/+7
| | | | | | | last. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23414 138bc75d-0d04-0410-961f-82ee72b054a4
* * sco5.h (SUBTARGET_SWITCHES): Add documentation for OpenServer-robertl1998-10-282-2/+7
| | | | | | | specific compiler switches. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23413 138bc75d-0d04-0410-961f-82ee72b054a4
* * class.c (instantiate_type): Don't consider templates for a normaljason1998-10-282-3/+10
| | | | | | | match. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23412 138bc75d-0d04-0410-961f-82ee72b054a4
* * class.c (finish_struct_1): Don't complain about non-copyjason1998-10-285-27/+19
| | | | | | | | | | | | | | 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
* * Makefile.in (c-common.o): Depend on c-pragma.h. Use $(RTL_H) insteadlaw1998-10-282-1/+6
| | | | | | | of rtl.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23409 138bc75d-0d04-0410-961f-82ee72b054a4
* Warning fixes:ghazi1998-10-285-43/+73
| | | | | | | | | | | | | * 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
* Andreas Schwab <schwab@issan.cs.uni-dortmund.de>rth1998-10-282-11/+55
| | | | | | | | | | | | | | * 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
* Fix DWARF1/C++ abort with member function in class nested in another function.wilson1998-10-282-4/+22
| | | | | | | | | * 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
* Wed Oct 28 08:03:31 1998 Alexandre Petit-Bianco <apbianco@cygnus.com>apbianco1998-10-2811-2570/+3997
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
* Revertjason1998-10-282-7/+3
| | | | | | | | | * 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
* newjason1998-10-281-0/+11
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23401 138bc75d-0d04-0410-961f-82ee72b054a4
* fixjason1998-10-281-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23400 138bc75d-0d04-0410-961f-82ee72b054a4
* upjason1998-10-281-2/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23399 138bc75d-0d04-0410-961f-82ee72b054a4
* Add code written by rth to generate use shifts to perform an extension if nonickc1998-10-282-2/+20
| | | | | | | suitable extend patterns can be found. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23398 138bc75d-0d04-0410-961f-82ee72b054a4
* * regclass.c (renumber, regno_allocated): New static variables, movedlaw1998-10-284-27/+43
| | | | | | | | | | | | | 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
* * Makefile.in (jcf-dump, gcjh): Link in $(LIBS) too.law1998-10-282-2/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23396 138bc75d-0d04-0410-961f-82ee72b054a4
* * decl.c (init_decl_processing): Renamed fields.tromey1998-10-283-15/+23
| | | | | | | | | | | | * 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
* * final.c (cleanup_subreg_operands): ASM_INPUTs need no treatment.jason1998-10-282-0/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23394 138bc75d-0d04-0410-961f-82ee72b054a4
* upjason1998-10-281-2/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23393 138bc75d-0d04-0410-961f-82ee72b054a4
* * init.c (build_delete): Reset TYPE_HAS_DESTRUCTOR here.jason1998-10-283-3/+14
| | | | | | | | * 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
* * toplev.c (compile_file): Temporarily revert last change.jason1998-10-282-4/+4
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23391 138bc75d-0d04-0410-961f-82ee72b054a4
* upjason1998-10-281-3/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23390 138bc75d-0d04-0410-961f-82ee72b054a4
* * pt.c (push_template_decl_real): Complain about default templatejason1998-10-282-0/+39
| | | | | | | args for enclosing classes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23389 138bc75d-0d04-0410-961f-82ee72b054a4
* upjason1998-10-281-4/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23388 138bc75d-0d04-0410-961f-82ee72b054a4
* * call.c (add_function_candidate): Treat conversion functionsjason1998-10-288-20/+55
| | | | | | | | | | | | | | | 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
* * c-typeck.c (convert_for_assignment): Parenthesize.jason1998-10-282-1/+5
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23386 138bc75d-0d04-0410-961f-82ee72b054a4
* Daily bump.law1998-10-281-1/+1
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23385 138bc75d-0d04-0410-961f-82ee72b054a4
* * toplev.c (compile_file): Call allocate_reg_info to free registerlaw1998-10-283-0/+11
| | | | | | | | 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
* upjason1998-10-271-1/+0
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23383 138bc75d-0d04-0410-961f-82ee72b054a4
* * jcf-write.c (emit_load_or_store): Avoid implicit int arguments.law1998-10-273-0/+7
| | | | | | | * mangle.c (emit_unicode_mangled_name): Similarly. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23382 138bc75d-0d04-0410-961f-82ee72b054a4
* * lex.c (do_identifier): Also generate LOOKUP_EXPR for RESULT_DECL.jason1998-10-273-1/+9
| | | | | | | | * 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
* * PROJECTS: Remove entry for local spilling.law1998-10-272-12/+2
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23380 138bc75d-0d04-0410-961f-82ee72b054a4
* * reload1.c (delete_output_reload): Avoid ambigous else.law1998-10-272-12/+18
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23379 138bc75d-0d04-0410-961f-82ee72b054a4
* * reload1.c (verify_initial_offsets): New function.law1998-10-273-12/+44
| | | | | | | | | (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
* * final.c (cleanup_subreg_operands): New function.law1998-10-275-38/+70
| | | | | | | | | | | | | | | | (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
* * decl.c (grokdeclarator): Use type_quals, rather than constp,mmitchel1998-10-271-0/+5
| | | | | | | consistently. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23376 138bc75d-0d04-0410-961f-82ee72b054a4
* fixjason1998-10-271-3/+6
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23375 138bc75d-0d04-0410-961f-82ee72b054a4
* THe final localized spilling patches. See the ChangeLog for details.law1998-10-274-1018/+787
| | | | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23374 138bc75d-0d04-0410-961f-82ee72b054a4
* * call.c (standard_conversion): instantiate_type here.jason1998-10-279-265/+172
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (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
* * decl.c (grokdeclarator): Use type_quals, rather than constp,mmitchel1998-10-272-5/+11
| | | | | | | consistently. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@23372 138bc75d-0d04-0410-961f-82ee72b054a4
OpenPOWER on IntegriCloud