aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2003-09-02re PR c++/11553 (g++ accepts duplicate 'friend')Scott Brumbaugh4-1/+25
PR c++/11553 * parser.c (cp_parser_decl_specifier_seq): Add check for a duplicate friend decl-specifier. PR c++/11553 * g++.dg/parse/friend3.C: New test. From-SVN: r71008
2003-09-02expr.c (expand_expr): The code following both_summands performs the same ↵Roger Sayle2-55/+14
task as simplify_gen_binary. * expr.c (expand_expr): The code following both_summands performs the same task as simplify_gen_binary. Replace all gotos to both_summands with a call to simplify_gen_binary and delete the now unused label. From-SVN: r71006
2003-09-02re PR target/7327 (-isystem and template linkage)Jason Merrill2-0/+8
PR c++/7327 * config/sparc/sol2.h (NO_IMPLICIT_EXTERN_C): Define. From-SVN: r71005
2003-09-02re PR c++/11847 (reference does not work as template argument any more)Mark Mitchell4-2/+21
PR c++/11847 * pt.c (convert_nontype_argument): Correct representation of REFERENCE_TYPE expressions. PR c++/11847 * g++.dg/template/class1.C: New test. From-SVN: r71003
2003-09-02cgraphunit.c (record_call_1): Use walk_tree_without_duplicates.Jeff Sturm2-2/+9
* cgraphunit.c (record_call_1): Use walk_tree_without_duplicates. (cgraph_optimize_function): Set current_function_decl to the fndecl we're integrating from. From-SVN: r71002
2003-09-02builtins.def: Break out _Complex math functions into their own category.Kaveh R. Ghazi2-12/+19
* builtins.def: Break out _Complex math functions into their own category. From-SVN: r71000
2003-09-02re PR c++/11808 (Wrong namespace lookup for template function when induced ↵Mark Mitchell7-29/+70
by a template parameter) PR c++/11808 * cp-tree.h (KOENIG_LOOKUP_P): New macro. (finish_call_expr): Change prototype. * parser.c (cp_parser_postfix_expression): Adjust call to finish_call_expr. * pt.c (tsubst_copy_and_build): Use KOENIG_LOOKUP_P. * semantics.c (finish_call_expr): Add koenig_p parameter. PR c++/11808 * g++.dg/expr/call1.C: New test. From-SVN: r70998
2003-09-02* langhooks-def.h (LANG_HOOKS_RTL_EXPAND_STMT): Cast properly.Andreas Jaeger2-3/+7
From-SVN: r70993
2003-09-02cfgbuild.c (compute_outgoing_frequencies): Use NOTE instead of finding the ↵Josef Zlomek2-3/+6
note again. * cfgbuild.c (compute_outgoing_frequencies): Use NOTE instead of finding the note again. From-SVN: r70992
2003-09-02* config.gcc: Remove host-specific rewrites of target_alias.Nathanael Nerode2-18/+4
From-SVN: r70991
2003-09-02* Makefile.in (genprogs): Fix typo.Mark Mitchell2-1/+3
From-SVN: r70989
2003-09-02Daily bump.GCC Administrator1-1/+1
From-SVN: r70987
2003-09-01re PR c++/12114 ([3.3.2] Uninitialized memory accessed in dtor)Mark Mitchell9-27/+140
PR c++/12114 * g++.dg/init/ref9.C: New test. PR c++/11972 * g++.dg/template/nested4.C: New test. PR c++/12114 * cp-tree.h (initialize_reference): Change prototype. * call.c (initialize_reference): Add cleanup parameter. * decl.c (grok_reference_init): Likewise. (check_initializer): Likewise. (cp_finish_decl): Insert a CLEANUP_STMT if necessary. (duplicate_decls): When replacing an anticipated builtin, do not honor TREE_NOTHROW. * typeck.c (convert_for_initialization): Correct call to initialize_reference. PR c++/11972 * pt.c (dependent_type_p_r): Pass only the innermost template arguments to any_dependent_template_arguments_p. From-SVN: r70981
2003-09-01Makefile.in (gencheck.o): Remove build commands.Mark Mitchell2-121/+70
* Makefile.in (gencheck.o): Remove build commands. (dummy-conditions.o): Likewise. (read-rtl.o): Likewise. (gensupport.o): Likewise. (genconfig$(build_exeext)): Remove rule. (genconfig.o): Remove build commands. (genflags$(build_exeext)): Remove rule. (genflags.o): Remove build commands. (gencodes$(build_exeext)): Remove rule. (gencodes.o): Remove build commands. (genconstants.o): Remove build commands. (genemit$(build_exeext)): Remove rule. (genemit.o): Remove build commands. (genrecog$(build_exeext)): Remove rule. (genrecog.o): Remove build commands. (genextract$(build_exeext)): Remove rule. (genextract.o): Remove build commands. (genpeep$(build_exeext)): Remove rule. (genpeep.o): Remove build commands. (genattr$(build_exeext)): Remove rule. (genattr.o): Remove build commands. (genprognames): New variable. (genprogs): Likewise. (genobjs): Likewise. (genprogs): New rule. (genobjs): Likewise. (genattrtab.o): Remove build commands. (genautomata.o): Likewise. (genoutput$(build_exeext)): Remove rule. (genoutput.o): Remove build commands. (gengenrtl.o): Likewise. (genpreds.o): Likewise. (gengtype.o): Likewise. (genconditions.o): Likewise. (gen-protos.o): Likewise. (scan.o): Likewise. (fix-header.o): Likewise. (scan-decls.o): Likewise. (check-g++): Combine with other check targets. (check-gcc): Likewise. (check-g77): Likewise. (check-objc): Likewise. From-SVN: r70980
2003-09-01config.gcc: Remove host-specific stuff which is unused here since the ↵Nathanael Nerode2-64/+3
introduction of... * config.gcc: Remove host-specific stuff which is unused here since the introduction of config.host. From-SVN: r70978
2003-09-01fragments.texi: Mention config.host.Nathanael Nerode3-8/+31
* doc/fragments.texi: Mention config.host. * doc/sourcebuild.texi: Mention config.host. Give brief descriptions of config.build, config.host, and config.gcc. From-SVN: r70977
2003-09-01c-decl.c (pushdecl): Don't put variables on C_TYPE_INCOMPLETE_VARS of a type ↵Zack Weinberg2-3/+10
unless... * c-decl.c (pushdecl): Don't put variables on C_TYPE_INCOMPLETE_VARS of a type unless that type is itself incomplete. From-SVN: r70976
2003-09-01config.host: New file.Nathanael Nerode5-117/+707
* config.host: New file. * config.gcc: Remove some host-specific stuff and some logic needed only for repeated invocation. * configure.in: Use config.host. * configure: Regenerate. From-SVN: r70975
2003-09-01c-typeck.c (build_binary_op): Kill BIT_ANDTC_EXPR.Josef Zlomek12-33/+30
* c-typeck.c (build_binary_op): Kill BIT_ANDTC_EXPR. * convert.c (convert_to_integer): Kill BIT_ANDTC_EXPR. * fold-const.c (int_const_binop): Kill BIT_ANDTC_EXPR. (fold): Kill BIT_ANDTC_EXPR and label bit_and. * tree.def (BIT_ANDTC_EXPR): Kill. * error.c (dump_expr): Kill BIT_ANDTC_EXPR. * lex.c (init_operators): Kill BIT_ANDTC_EXPR. * pt.c (tsubst_copy): Kill BIT_ANDTC_EXPR. * typeck.c (build_binary_op): Kill BIT_ANDTC_EXPR. (tsubst_copy_and_build): Kill BIT_ANDTC_EXPR. * com.c (ffecom_overlap_): Kill BIT_ANDTC_EXPR. (ffecom_tree_canonize_ref_): Kill BIT_ANDTC_EXPR. From-SVN: r70972
2003-09-01Daily bump.GCC Administrator1-1/+1
From-SVN: r70970
2003-08-31configure.in: Remove uses of "for x in ..Nathanael Nerode3-65/+26
* configure.in: Remove uses of "for x in .. ${foo}" idiom. * configure: Regenerate. From-SVN: r70967
2003-08-31config.gcc: Remove references to install_headers_dir...Nathanael Nerode2-28/+14
* config.gcc: Remove references to install_headers_dir, now unused since introduction of config.build. * config.gcc (i860-*-sysv4*): Don't set unused USG, SVR3 defines. From-SVN: r70966
2003-08-31fragments.texi, [...]: Mention new file config.build.Nathanael Nerode6-129/+235
* doc/fragments.texi, doc/sourcebuild.texi: Mention new file config.build. * config.build: New file. * config.gcc: Remove some build-specific stuff. * configure.in: Use config.build. * configure: Regnerate. From-SVN: r70965
2003-08-31re PR middle-end/11823 (Optimizing large jump tables for switch statements)Steven Bosscher2-1/+9
PR middle-end/11823 * stmt.c (expand_end_case_type): Only use jump tables for dense switch statements when optimizing for size. Co-Authored-By: Roger Sayle <roger@eyesopen.com> From-SVN: r70959
2003-08-31builtins.c (expand_builtin_setjmp): Use emit_jump to jump around the != 0 ↵Olivier Hainque2-3/+9
case... * builtins.c (expand_builtin_setjmp): Use emit_jump to jump around the != 0 case, which ensures pending stack adjustments are flushed. From-SVN: r70958
2003-08-31configure.frag: Delete file.Zack Weinberg7-218/+182
* configure.frag: Delete file. * configure.in: Rename the substitution variables dep_host_xmake_file and dep_tmake_file to xmake_file and tmake_file respectively. Do not expand $srcdir in the value of these; leave that for Make. Introduce a new substitution varaible, all_lang_makefrags, which lists subdirectory Make-lang.in files; exclude these from all_lang_makefiles, which is now only for subdirectory outputs. Do not invoke configure.frag. Do not set nor AC_SUBST_FILE target_overrides, host_overrides, or language_fragments. Create build subdirectories in config.status extra commands. * configure: Regenerate. * Makefile.in: Update substitutions to match changes to configure. Use include directives instead of @-insertions to read in host, target, and language fragments. (Makefile rule): Do not invoke configure.frag. Do not copy config.status to config.run before executing it. Set CONFIG_HEADERS and CONFIG_FILES so that only Makefile gets regenerated. (cstamp-h rule): Set CONFIG_FILES as well as CONFIG_HEADERS. ada: * Makefile.in: Update substitutions to match changes to configure. Use include directives instead of @-insertions to read in host and target fragments. Add a rule to regenerate ada/Makefile. From-SVN: r70957
2003-08-31Daily bump.GCC Administrator1-1/+1
From-SVN: r70955
2003-08-30c-tree.h: Delete COMPARE_DIFFERENT_TU from enumeration.Zack Weinberg4-10/+48
* c-tree.h: Delete COMPARE_DIFFERENT_TU from enumeration. * c-typeck.c (same_translation_unit_p): New function. (comptypes): Use it instead of flags parameter to identify structure types from different translation units. * c-decl.c (duplicate_decls): Always call comptypes with COMPTYPE_STRICT flags argument. (c_reset_state): Set BLOCK_SUPERCONTEXT of the block formed to file_scope_decl. From-SVN: r70953
2003-08-30c-tree.h (C_TYPE_INCOMPLETE_VARS): New macro.Zack Weinberg3-98/+74
* c-tree.h (C_TYPE_INCOMPLETE_VARS): New macro. * c-decl.c (struct c_scope): Remove "incomplete" field. (pushdecl): Attach variables with incomplete types to the TYPE_MAIN_VARIANT of the incomplete type in question. (finish_struct): Look at C_TYPE_INCOMPLETE_VARS for variables to complete, not at current_scope->incomplete. All such variables do need completion. From-SVN: r70952
2003-08-30lib1funcs.asm (RETCOND): Delete.Richard Earnshaw5-324/+288
2003-08-30 Richard Earnshaw <rearnsha@arm.com> Nicolas Pitre <nico@cam.org> * arm/lib1funcs.asm (RETCOND): Delete. (RETLDM): New assembler macro. Use it for returning with ldm/ldr. (ARM_LDIV0, THUMB_LDIV0): Collapse multiple definitions. (__ARM_ARCH__): Move here from ieee754-?f.S. (RET, RETc): Clean up definitions. (DIV_FUNC_END): Renamed from FUNC_END. All uses changed. (FUNC_END): New macro that marks the end of any function. (ARM_FUNC_START): New macro that allows an assembler routine to be implemented in ARM code even if a Thumb-only build. Unconditionally include ieee754-?f.S. * arm/ieee754-df.S: Delete macros moved to lib1funcs.asm. Mark ends of functions. Split into separate conditionally-compiled units. Use RETLDM to return from routines. * arm/ieee754-sf.S: Similarly. * t-arm-elf (LIB1ASMFUNCS): Remove _ieee754_dp and _ieee754_sp. Add _negdf2 _addsubdf3 _muldivdf3 _cmpdf2 _unorddf2 _fixdfsi _truncdfsf2 _negsf2 _addsubsf3 _muldivsf3 _cmpsf2 _unordsf2 _fixsfsi and _fixunssfsi. * arm/ieee754-df.S (__muldf3): Fix bug when result of a multiplication underflows to zero. (__adddf3): Fix bug when using VFP ordering on little-endian processors. (__fixdfsi): Use rrx to extract the carry into a register instead of MRS instruction. Optimize later use of result. * arm/ieee754-sf.S (__fixsfsi): Likewise. (__fixunssfsi): Use a better sequence for handling negative-or-zero. Co-Authored-By: Nicolas Pitre <nico@cam.org> From-SVN: r70949
2003-08-30re PR c++/12093 (inconstitent error with templates/non-templates)Mark Mitchell1-0/+4
PR c++/12093 * g++.dg/template/non-dependent4.C: New test. From-SVN: r70943
2003-08-30Remove inadvertent commitMark Mitchell1-10/+0
From-SVN: r70942
2003-08-30re PR c++/12093 (inconstitent error with templates/non-templates)Mark Mitchell4-0/+22
2003-08-29 Mark Mitchell <mark@codesourcery.com> PR c++/12093 * pt.c (build_non_dependent_expr): Do not build a NON_DEPENDENT_EXPR for a STRING_CST. 2003-08-29 Mark Mitchell <mark@codesourcery.com> PR c++/12093 * g++.dg/template/non-dependent4.C: New test. From-SVN: r70941
2003-08-30Daily bump.GCC Administrator1-1/+1
From-SVN: r70939
2003-08-30Add missing ChangeLog entryMark Mitchell1-0/+8
From-SVN: r70937
2003-08-29re PR c++/11928 (c++ typedef handling)Mark Mitchell4-2/+55
PR c++/11928 * search.c (add_conversions): Avoid adding two conversion operators for the same type. PR c++/11928 * g++.dg/inherit/conv1.C: New test. From-SVN: r70934
2003-08-29tree-optimize.c: New file.Richard Henderson16-401/+422
gcc/ * tree-optimize.c: New file. * Makefile.in (OBJS-archive): Add tree-optimize.o. (tree-optimize.o): New. * c-decl.c (store_parm_decls): Use allocate_struct_function. (finish_function): Don't free_after_parsing or free_after_compilation. (set_save_expr_context): Move to tree-optimize.c. (c_expand_body_1): Use tree_rest_of_compilation. * c-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New. * objc/objc-lang.c (LANG_HOOKS_RTL_EXPAND_STMT): New. * c-objc-common.c (expand_deferred_fns): Don't emit unused inlines; iterate until closure. * langhooks-def.h (LANG_HOOKS_RTL_EXPAND_START, LANG_HOOKS_RTL_EXPAND_STMT, LANG_HOOKS_RTL_EXPAND_END): New. (LANG_HOOKS_RTL_EXPAND_INITIALIZER): New. * langhooks.h (struct lang_hooks_for_rtl_expansion): New. * toplev.h (tree_rest_of_compilation): Declare it. gcc/cp/ * cp-lang.c (LANG_HOOKS_RTL_EXPAND_START): New. (LANG_HOOKS_RTL_EXPAND_STMT): New. * cp-tree.h (cxx_expand_function_start): Declare. * decl.c (start_function): Use allocate_struct_function. Move stmts_are_full_exprs_p assertion from expand_body. Do not free_after_parsing or free_after_compilation. (cxx_push_function_context): Move code to set struct function data from genrtl_start_function. * optimize.c (optimize_function): Don't inc/dec function_depth. * semantics.c (expand_body): Use tree_rest_of_compilation. (cxx_expand_function_start): Rename from genrtl_start_function, omit bits done by tree_rest_of_compilation. (genrtl_finish_function): Remove. (clear_decl_rtl): Move to ../tree-optimize.c. Co-Authored-By: Jason Merrill <jason@redhat.com> From-SVN: r70933
2003-08-29re PR middle-end/6196 (ICE in copy_to_mode_reg, at explow.c:711)Mark Mitchell5-7/+38
PR c++/6196 * pt.c (tsubst_copy_and_build): Correct handling of address-of-label extension. * semantics.c (finish_goto_stmt): The address of a label must go through the lvalue-to-rvalue conversion. PR c++/6196 * g++.dg/ext/label1.C: New test. * g++.dg/ext/label2.C: Likewise. From-SVN: r70932
2003-08-29function.h (struct function): Add rtl_inline_init, saved_for_inline.Richard Henderson5-6/+22
* function.h (struct function): Add rtl_inline_init, saved_for_inline. * integrate.c (save_for_inline): Set saved_for_inline. * c-semantics.c (genrtl_scope_stmt): Check it. * toplev.c (wrapup_global_declarations): Check it. (rest_of_handle_inlining): Set and check rtl_inline_init. (rest_of_compilation): Remove out of date comment. From-SVN: r70931
2003-08-29function.c (allocate_struct_function): New, split out of ...Richard Henderson5-147/+62
* function.c (allocate_struct_function): New, split out of ... (prepare_function_start, init_function_start): ... here. * expr.c (init_expr): Use ggc_alloc_cleared. * stmt.c (init_stmt_for_function): Likewise. * tree.h (allocate_struct_function): Declare. From-SVN: r70929
2003-08-29function.h (struct function): Move function_frequency and max_jumptable_ents ↵Richard Henderson2-17/+22
before start of bit field members. * function.h (struct function): Move function_frequency and max_jumptable_ents before start of bit field members. From-SVN: r70928
2003-08-29config.gcc: Don't use negated character class in shell case clause.Nathanael Nerode2-1/+6
* config.gcc: Don't use negated character class in shell case clause. From-SVN: r70927
2003-08-29builtins.c (expand_builtin_constant_p): Check cse_not_expected here, ↵Richard Henderson2-6/+14
(fold_builtin_constant_p) ... * builtins.c (expand_builtin_constant_p): Check cse_not_expected here, (fold_builtin_constant_p) ... not here. From-SVN: r70926
2003-08-29c-tree.h (C_DECL_FILE_SCOPE): Move ...Richard Henderson6-20/+26
* c-tree.h (C_DECL_FILE_SCOPE): Move ... * tree.h (DECL_FILE_SCOPE_P): ... here, and rename. * c-decl.c, c-objc-common.c, c-typeck.c: Update to match. From-SVN: r70925
2003-08-29builtins.def: Fix typos.Kaveh R. Ghazi2-15/+28
* builtins.def: Fix typos. (ATTR_MATHFN_FPROUNDING_STORE): New macro. (BUILT_IN_FREXP, BUILT_IN_FREXPF, BUILT_IN_FREXPL, BUILT_IN_MODF, BUILT_IN_MODFF, BUILT_IN_MODFL, BUILT_IN_REMQUO, BUILT_IN_REMQUOF, BUILT_IN_REMQUOL, BUILT_IN_SINCOS, BUILT_IN_SINCOSF, BUILT_IN_SINCOSL): Use ATTR_MATHFN_FPROUNDING_STORE. From-SVN: r70924
2003-08-29builtins.def (BUILT_IN_ERFC, [...]): Use ATTR_MATHFN_FPROUNDING_ERRNO.Kaveh R. Ghazi2-3/+8
* builtins.def (BUILT_IN_ERFC, BUILT_IN_ERFCF, BUILT_IN_ERFCL): Use ATTR_MATHFN_FPROUNDING_ERRNO. From-SVN: r70923
2003-08-29* config.gcc (i386-*-vsta): Fix obvious bogosity.Nathanael Nerode2-2/+4
From-SVN: r70922
2003-08-29inclhack.def: Remove special cases for unsupported PTX 1 and PTX 2 (including...Nathanael Nerode3-55/+8
* fixinc/inclhack.def: Remove special cases for unsupported PTX 1 and PTX 2 (including i[34567]86-sequent-sysv3). * fixinc/fixincl.x: Regenerate. From-SVN: r70918
2003-08-29Makefile.in (cpp.info): Just state dependencies.Mark Mitchell2-80/+57
* Makefile.in (cpp.info): Just state dependencies. (gcc.info): Likewise. (gccint.info): Likewise. (gccinstall.info): Likewise. (cppinternals.info): Likewise. (cpp.dvi): Likewise. (gcc.dvi): Likewise. (gccint.dvi): Likewise. (gccinstall.dvi): Likewise. (cppinternals.dvi): Likewise. (gcov.1): Likewise. (cpp.1): Likewise. (gcc.1): Likewise. (gfdl.7): Likewise. (gpl.7): Likewise. (fsf-funding.7): Likewise. ($(objdir)/%.info): New pattern rule. (%.dvi): Likewise. From-SVN: r70917
2003-08-29Makefile.in (restage1): Pass BOOT_CFLAGS to recursive make.Kelley Cook2-9/+19
2003-08-29 Kelley Cook <kelleycook@wideopenwest.com> * Makefile.in (restage1): Pass BOOT_CFLAGS to recursive make. (restage2): Likewise. (restage3): Likewise. (restage4): Likewise. (restageprofile): Likewise. (restagefeedback): Likewise. (bubblestrap): Likewise. From-SVN: r70916