aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2003-07-22re PR c++/10793 (ICE (treecheck) when partial-specializing with an invalid ↵Kriang Lerdsuwanakij4-0/+22
type and a base class, in xref_basetypes, at cp/decl.c:12834) PR c++/10793 * decl.c (xref_basetypes): Handle error_mark_node. * g++.dg/template/crash9.C: New test. From-SVN: r69671
2003-07-22re PR c++/3004 (Accepts illegal code)Volker Reichelt11-0/+155
PR c++/3004 * g++.dg/parse/typedef3.C: New test. PR c++/7906 * g++.dg/parse/operator2.C: New test. PR c++/8895 * g++.dg/parse/def-tmpl-arg1.C: New test. PR c++/9282 * g++.dg/parse/funptr1.C: New test. PR c++/9452 * g++.dg/parse/ambig3.C: New test. PR c++/9454 * g++.dg/parse/operator3.C: New test. PR c++/9486 * g++.dg/parse/template10.C: New test. PR c++/9488 * g++.dg/parse/template11.C: New test. PR c++/10150 * g++.dg/parse/invalid-op1.C: New test. PR c++/10247 * g++.dg/parse/condexpr1.C: New test. From-SVN: r69670
2003-07-22cp-tree.h (enum cp_lvalue_kind): Add clk_packed.Nathan Sidwell8-10/+159
cp: * cp-tree.h (enum cp_lvalue_kind): Add clk_packed. * tree.c (lvalue_p_1): Set it. * class.c (check_field): Don't allow non-packed non-POD fields to be packed. * call.c (reference_binding): Need a temporary for all bitfield and packed fields. (convert_like_real): Check it is ok to make a temporary here. testsuite: * g++.dg/ext/packed3.C: New test. * g++.dg/ext/packed4.C: New test. From-SVN: r69669
2003-07-22c-common.c (handle_packed_attribute): Don't pack a struct via a typedef.Nathan Sidwell4-13/+74
* c-common.c (handle_packed_attribute): Don't pack a struct via a typedef. Propagate packedness from a main variant. testsuite: * gcc.dg/pack-test-3.c: New test. From-SVN: r69668
2003-07-22* Makefile.in (install-common): Add dependency on installdirs.Nathanael Nerode2-1/+5
From-SVN: r69665
2003-07-22c-common.c (c_common_type_for_mode): Return integer types for pointer modes.Alexandre Oliva2-2/+7
* c-common.c (c_common_type_for_mode): Return integer types for pointer modes. From-SVN: r69661
2003-07-22c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here.Geoffrey Keating2-8/+29
* c-decl.c (start_decl): Don't call maybe_apply_pragma_weak here. (finish_decl): Call maybe_apply_pragma_weak here. (grokdeclarator): Check that DECL_ASSEMBLER_NAME isn't set before TREE_PUBLIC and TREE_STATIC are decided. (start_function): Move call to maybe_apply_pragma_weak. Check that DECL_ASSEMBLER_NAME isn't set too early. From-SVN: r69660
2003-07-22cpplex.c (_cpp_process_line_notes): Mention option name in trigraphs warning.Geoffrey Keating2-3/+11
* cpplex.c (_cpp_process_line_notes): Mention option name in trigraphs warning. From-SVN: r69659
2003-07-22combine.c (if_then_else_cond): Simplify the comparison of rtx against -1, 0, ↵Kazu Hirata5-12/+19
and 1. * combine.c (if_then_else_cond): Simplify the comparison of rtx against -1, 0, and 1. * loop.c (check_dbra_loop): Likewise. * optabs.c (emit_conditional_move): Likewise. (emit_conditional_add): Likewise. * config/i386/i386.md (*movsi_or): Likewise. (*movdi_or_rex6): Likewise. From-SVN: r69658
2003-07-22Daily bump.GCC Administrator1-1/+1
From-SVN: r69656
2003-07-21* cgraphunit.c (cgraph_finalize_compilation_unit): Remove redundant if.Jan Hubicka2-3/+6
From-SVN: r69652
2003-07-21c-common.h (num_in_fnames): Declare.Geoffrey Keating6-22/+38
* c-common.h (num_in_fnames): Declare. (c_static_assembler_name): Move from here... * c-tree.h (c_static_assembler_name): ... to here. * c-opts.c: Don't include langhooks-def.h. (c_static_assembler_name): Move to c-decl.c. (num_in_fnames): Make externally visible. * c-decl.c: Include langhooks-def.h. (c_static_assembler_name): Move from c-opts.c. * Makefile.in (c-decl.o): Add $(LANGHOOKS_DEF_H). (c-opts.o): Remove $(LANGHOOKS_DEF_H). From-SVN: r69650
2003-07-21compat.exp: Handle dg-options per source file.Janis Johnson16-33/+121
* lib/compat.exp: Handle dg-options per source file. * g++.dg/compat/abi/bitfield1_x.C: Specify dg-options. * g++.dg/compat/abi/bitfield1_y.C: Ditto. * g++.dg/compat/abi/bitfield2_x.C: Ditto. * g++.dg/compat/abi/bitfield2_y.C: Ditto. * g++.dg/compat/abi/vbase8-10_x.C: Ditto. * g++.dg/compat/abi/vbase8-10_y.C: Ditto. * g++.dg/compat/abi/vbase8-21_x.C: Ditto. * g++.dg/compat/abi/vbase8-21_y.C: Ditto. * g++.dg/compat/abi/vbase8-22_x.C: Ditto. * g++.dg/compat/abi/vbase8-22_y.C: Ditto. * g++.dg/compat/abi/vbase8-4_x.C: Ditto. * g++.dg/compat/abi/vbase8-4_y.C: Ditto. * g++.dg/compat/break/bitfield7_x.C: Ditto. * g++.dg/compat/break/bitfield7_y.C: Ditto. From-SVN: r69649
2003-07-21cppfiles.c (open_file_pch): Don't put unused entries in the splay tree.Neil Booth2-33/+35
* cppfiles.c (open_file_pch): Don't put unused entries in the splay tree. Remove dead code. From-SVN: r69647
2003-07-21c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME when ↵Geoffrey Keating2-8/+20
it's not needed. * c-pragma.c (maybe_apply_pragma_weak): Don't get DECL_ASSEMBLER_NAME when it's not needed. From-SVN: r69646
2003-07-21rs6000.h (machine_function): Add ra_need_lr.Jakub Jelinek3-1/+11
* config/rs6000/rs6000.h (machine_function): Add ra_need_lr. * config/rs6000/rs6000.c (rs6000_return_addr): Set it. (rs6000_emit_prologue): Save FPRs inline if set. From-SVN: r69645
2003-07-21ia64.md (prefetch): Support predicate.H.J. Lu2-8/+12
2003-07-21 H.J. Lu <hongjiu.lu@intel.com> * config/ia64/ia64.md (prefetch): Support predicate. From-SVN: r69642
2003-07-21re PR c/10320 (gcc 3.4 gets rid of static inline function that does not get ↵Andrew Pinski2-0/+18
inlined) 2003-07-21 Andrew Pinski <pinskia@physics.uc.edu> PR c/10320 * gcc.c-torture/execute/20030718-1.c: New test. From-SVN: r69639
2003-07-21cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p.Josef Zlomek3-27/+27
* cfgcleanup.c (merge_blocks_move_successor_nojumps): Use tablejump_p. * rtlanal.c (tablejump_p): Use next_active_insn for finding the jump table. From-SVN: r69637
2003-07-21re PR rtl-optimization/11536 ([strength-reduce] -O2 optimalization produces ↵Eric Botcazou4-1/+54
wrong code) PR optimization/11536 * unroll.c (loop_iterations): Do not replace a register holding the final value by its equivalent before the loop if it is not invariant. PR optimization/11536 * gcc.dg/20030721-1.c: New test. From-SVN: r69635
2003-07-21* doc/extend.texi: Fixes to spelling, grammar, and diction.Dave Fluri2-19/+24
From-SVN: r69633
2003-07-21Add 'instantiated from' dg-errorNathan Sidwell1-1/+1
From-SVN: r69632
2003-07-21invoke.texi (Optimize Options): Replace "it's" with "its".Ben Elliston2-6/+11
* doc/invoke.texi (Optimize Options): Replace "it's" with "its". (V850 Options): Spelling fixes. From-SVN: r69627
2003-07-21* Typo fixes.Ben Elliston1-5/+5
* Replace "callgraph.{c,o}" with "cgraph.{c,o}" (corrected). From-SVN: r69626
2003-07-21cp-tree.h (hack_identifier): Remove.Nathan Sidwell4-120/+89
cp: * cp-tree.h (hack_identifier): Remove. * method.c (hack_identifier): Remove. * semantics.c (finish_id_expression): Expand hack_identifier here. Simplify. From-SVN: r69625
2003-07-21Daily bump.GCC Administrator1-1/+1
From-SVN: r69618
2003-07-20* doc/invoke.texi: Fixes to style, grammar and diction.Lisa M. Goldstein2-27/+31
From-SVN: r69613
2003-07-20builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form.Roger Sayle4-16/+7
* builtins.def (BUILT_IN_ALLOCA): Remove "#if SMALL_STACK" form. * system.h (SMALL_STACK): Poison obsolete target macro. * doc/tm.texi (SMALL_STACK): Remove target macro documentation. From-SVN: r69609
2003-07-20configure.in: Cache the results of testing for cmp's capabilities.Phil Edwards3-231/+243
2003-07-20 Phil Edwards <pme@gcc.gnu.org> * configure.in: Cache the results of testing for cmp's capabilities. * configure: Regenerate. From-SVN: r69607
2003-07-20re PR debug/11279 (DWARF-2 output mishandles large enums)Mark Mitchell2-2/+9
PR debug/11279 * dwarf2out.c (gen_enumeration_type_die): Remember that enumerators can be unsigned. From-SVN: r69605
2003-07-20re PR c++/11546 (Type lookup problems in out-of-line definition of a class ↵Mark Mitchell2-0/+22
doubly nested from a template class) PR c++/11546 * g++.dg/template/lookup1.C: New test. From-SVN: r69602
2003-07-20Daily bump.GCC Administrator1-1/+1
From-SVN: r69599
2003-07-19* c-decl.c (named_labels, shadowed_labels, label_level_chain)Zack Weinberg8-299/+475
(push_label_level, pop_label_level): Kill. (struct binding_level): Rename level_chain to outer. Add outer_function field. Change parm_flag, function_body, keep, keep_if_subblocks to 1-bit bitfields of type bool. (current_function_level): New variable. (keep_next_level_flag, keep_next_if_subblocks): Change type to bool. (keep_next_level, declare_parm_level, warn_if_shadowing): Update to match. (struct language_function): Kill named_labels, shadowed_labels fields. (c_init_decl_processing, start_function, c_push__function_context) (c_pop_function_context): No need to muck with named_labels nor shadowed_labels. (make_binding_level): No need to clear the structure here. (pop_binding_level): Always operate on current_binding_level. Update current_function_level if necessary. (pushlevel): Don't clear named_labels. Update current_function_level if necessary. Use "true" and "false" where appropriate. (poplevel): Diagnose labels defined but not used, or vice versa, and clear out label-meanings leaving scope, while walking down the decls list, for all binding levels. Handle LABEL_DECLs appearing in the shadowed list. pop_binding_level takes no arguments. (pushdecl_function_level): Use current_function_level. (make_label, bind_label): New static functions. (declare_label): New exported function. (lookup_label, define_label): Rewritten for new data structure. (shadow_label): Kill. * c-tree.h: Prototype declare_label; don't prototype push_label_level, pop_label_level, nor shadow_label. * c-parse.in: Remove all calls to push_label_level and pop_label_level. Use declare_label for __label__ decls. * doc/extend.texi: Clarify that __label__ can be used to declare labels with local scope in any nested block, not just statement expressions. Cross-reference nested functions section from local labels section. testsuite: * gcc.dg/noncompile/label-1.c: New comprehensive test case for diagnostics of ill-formed constructs involving labels. * gcc.dg/noncompile/label-lineno-1.c: Add error regexp for the new 'previously defined here' message. From-SVN: r69597
2003-07-19* sched-rgn.c (find_rgns): Initialize current_edge correctly.Zdenek Dvorak2-1/+6
From-SVN: r69595
2003-07-19makefile.texi (restrap, [...]): Document targets.Phil Edwards2-0/+15
2003-07-19 Phil Edwards <pme@gcc.gnu.org> * doc/makefile.texi (restrap, profiledbootstrap): Document targets. From-SVN: r69594
2003-07-19fixfixes.c [...]: Remove unnecessary casts.Kaveh R. Ghazi44-236/+203
gcc: * fixinc/fixfixes.c fixinc/fixincl.c fixinc/fixlib.c fixinc/server.c objc/objc-act.c: Remove unnecessary casts. f: * com.c data.c expr.c fini.c g77spec.c global.c lab.c lex.c name.c sta.c stc.c std.c storag.c stt.c stw.c symbol.c target.c type.c: Remove unnecessary casts. cp: * call.c class.c decl.c decl2.c g++spec.c lex.c parser.c pt.c rtti.c semantics.c typeck.c: Remove unnecessary casts. java: * class.c java-tree.h jcf-write.c jvspec.c: Remove unnecessary casts. treelang: * treetree.c: Remove unnecessary casts. From-SVN: r69593
2003-07-19s390.c (legitimize_pic_address): Access local symbols relative to the GOT ↵Ulrich Weigand4-419/+384
instead of relative to the literal... * config/s390/s390.c (legitimize_pic_address): Access local symbols relative to the GOT instead of relative to the literal pool base. (s390_output_symbolic_const): Handle new GOT-relative accesses. * config/s390/s390.md ("call"): Access local functions and PLT stubs relative to the GOT instead of relative to the literal pool base. ("call_value"): Likewise. ("call_value_tls"): Likewise. * config/s390/s390.c (s390_chunkify_start): Remove pool anchor reloading. Support LTREL_BASE / LTREL_OFFSET construct. (s390_chunkify_finish): Likewise. (s390_chunkify_cancel): Likewise. (s390_reorg): Adapt caller. (find_base_register_in_addr, find_base_register_ref, replace_base_register_ref): Delete. (find_ltrel_base, replace_ltrel_base): New functions. (find_constant_pool_ref): Handle LTREL_BASE unspecs. (s390_decompose_address): Handle LTREL_BASE unspecs. Optimize base vs. index register usage. (struct constant_pool): Remove 'anchor'. (s390_add_anchor): Delete. (s390_dump_pool): Remove anchor handling. * config/s390/s390.md ("reload_anchor"): Remove. * config/s390/s390.c (s390_split_branches): Use LTREL_BASE/OFFSET. (s390_load_got): New function. Use LTREL_BASE/OFFSET. (s390_emit_prologue): Use it. * config/s390/s390.md ("builtin_longjmp", "builtin_setjmp_setup", "builtin_setjmp_receiver"): Cleanup. Use s390_load_got. Do not hard-code register 14. * config/s390/s390-protos.h (s390_load_got): Declare. * config/s390/s390.c (NR_C_MODES, constant_modes, gen_consttable): Support TImode constants. * config/s390/s390.md ("consttable_ti"): New. ("consttable_si", "consttable_di"): Handle TLS symbols correctly. * config/s390/s390.md (UNSPEC_LTREL_OFFSET, UNSPEC_LTREL_BASE, UNSPEC_GOTENT, UNSPEC_GOT, UNSPEC_GOTOFF, UNSPEC_PLT, UNSPEC_PLTOFF, UNSPEC_RELOAD_BASE, UNSPECV_POOL, UNSPECV_POOL_START, UNSPECV_POOL_END, UNSPECV_POOL_QI, UNSPECV_POOL_HI, UNSPECV_POOL_SI, UNSPECV_POOL_DI, UNSPECV_POOL_TI, UNSPECV_POOL_SF, UNSPECV_POOL_DF, UNSPECV_MAIN_POOL): New symbolic constants. ("consttable_qi", "consttable_hi", "consttable_si", "consttable_di", "consttable_sf", "consttable_df", "pool_start_31", "pool_end_31", "pool_start_64", "pool_end_64", "reload_base_31", "reload_base_64", "pool", "literal_pool_31", "literal_pool_64"): Cleanup. Use symbolic UNSPEC values. * config/s390/s390.c (larl_operand, s390_short_displacement, bras_sym_operand, s390_cannot_force_const_mem, s390_delegitimize_address, s390_decompose_address, legitimize_pic_address, s390_output_symbolic_const, s390_function_profiler): Use symbolic UNSPEC values. From-SVN: r69592
2003-07-19alias.c [...]: Remove unnecessary casts.Kaveh R. Ghazi119-1150/+957
* alias.c alloc-pool.c bitmap.c bitmap.h bt-load.c builtins.c c-common.c c-decl.c c-incpath.c c-lex.c c-opts.c c-parse.in c-pragma.c c-typeck.c calls.c cfg.c cfganal.c cfgloop.c cfgrtl.c collect2.c combine.c conflict.c coverage.c cppexp.c cppfiles.c cpphash.c cppinit.c cpplex.c cpplib.c cppmacro.c cppspec.c cpptrad.c cse.c cselib.c dbxout.c defaults.h df.c dominance.c dwarf2out.c dwarfout.c emit-rtl.c except.c expmed.c expr.c final.c fix-header.c flow.c fold-const.c function.c gcc.c gccspec.c gcov.c gcse.c genattr.c genattrtab.c genautomata.c genconditions.c genemit.c genextract.c genoutput.c genrecog.c gensupport.c ggc-page.c ggc-simple.c global.c graph.c haifa-sched.c hashtable.c integrate.c jump.c langhooks.c lcm.c line-map.c local-alloc.c loop.c mips-tdump.c mips-tfile.c mkdeps.c optabs.c params.c postreload.c prefix.c print-tree.c protoize.c ra-build.c ra-colorize.c ra-rewrite.c ra.c recog.c reg-stack.c regclass.c regmove.c regrename.c reload.c reload1.c reorg.c resource.c sbitmap.c sched-deps.c sched-rgn.c sched-vis.c sdbout.c simplify-rtx.c ssa-ccp.c ssa.c stmt.c stor-layout.c timevar.c tlink.c toplev.c tree-dump.c tree.c unroll.c unwind-dw2-fde.c varasm.c varray.c vmsdbgout.c xcoffout.c: Remove unnecessary casts. From-SVN: r69587
2003-07-19c-pragma.c (apply_pragma_weak): Don't use warning_with_decl.Gabriel Dos Reis3-2/+8
* c-pragma.c (apply_pragma_weak): Don't use warning_with_decl. * toplev.h (warning): Remove attribute. From-SVN: r69585
2003-07-19Correct entries informationKriang Lerdsuwanakij2-3/+3
From-SVN: r69583
2003-07-19c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl.Gabriel Dos Reis2-141/+229
* c-decl.c (c_finish_incomplete_decl): Don't use xxx_with_decl. (pop_label_level): Likewise. (duplicate_decls): Likewise. (implicitly_declare): Likewise. (shadow_label): Likewise. (start_decl): Likewise. (finish_decl): Likewise. (grokdeclarator): Likewise. (get_parm_info): Likewise. (detect_field_duplicates): Likewise. (finish_struct): Likewise. (start_function): Likewise. (store_parm_decls): Likewise. (finish_function): Likewise. (c_expand_body_1): Likewise. (check_for_loop_decls): Likewise. (merge_translation_unit_decls): Likewise. From-SVN: r69582
2003-07-19common.opt: Document --param.Neil Booth9-47/+163
* common.opt: Document --param. * opts.c (columns, undocumented_msg): New. (print_help): Get number of columns from environment. Print --param help. Tweak newline handling. (print_param_help): New. (print_filtered_help): Better handling of duplicates. Complain about undocumented switches. (print_switch): New. (wrap_help): Improve wrapping, use COLUMNS. * opts.sh: Ignore comments in records. * params.def: Fix typos and remove trailing periods. * toplev.c (display_help): Don't dump --param help. * doc/sourcebuild.texi: Update. java: * lang.opt: Don't show -MD_ and -MDD_. From-SVN: r69581
2003-07-19Add missing PR number.David S. Miller1-0/+1
From-SVN: r69580
2003-07-18optabs.c (prepare_operand): Fail gracefully instead of abort if the ↵Richard Henderson2-1/+17
predicate doesn't satisfy. 2003-07-18 Richard Henderson <rth@redhat.com> * optabs.c (prepare_operand): Fail gracefully instead of abort if the predicate doesn't satisfy. (gen_cond_trap): Allow prepare_operand to fail. From-SVN: r69578
2003-07-19Daily bump.GCC Administrator1-1/+1
From-SVN: r69575
2003-07-18c-common.c: Don't undefine GCC_DIAG_STYLE.Gabriel Dos Reis4-34/+49
* c-common.c: Don't undefine GCC_DIAG_STYLE. (fname_decl): Don't use xxx_with_decl. (c_add_case_label): Likewise. (handle_section_attribute): Likewise. (handle_alias_attribute): Likewise. (handle_no_instrument_function_attribute): Likewise. (handle_no_limit_stack_attribute): Likewise. * c-objc-common.c (c_tree_printer): Print IDENTIFIER_NODEs. * c-format.c (gcc_cdiag_char_table): Add '%E' format-specifier. From-SVN: r69573
2003-07-18Makefile.in (ifcvt.o): Add cfgloop.h.Zdenek Dvorak5-3/+55
* Makefile.in (ifcvt.o): Add cfgloop.h. * basic-block.h (EDGE_LOOP_EXIT): New flag. * cfgrtl.c (rtl_verify_flow_info_1): Handle it correctly. * ifcvt.c: Include cfgloop.h. (mark_loop_exit_edges): New static function. (if_convert): Call it. (find_if_header): Ignore branches out of loops. From-SVN: r69572
2003-07-18combine.c (simplify_comparison): Don't share rtx when converting (ne (and ↵Kazu Hirata2-1/+6
(not X) 1) 0) to (eq (and X 1) 0). * combine.c (simplify_comparison): Don't share rtx when converting (ne (and (not X) 1) 0) to (eq (and X 1) 0). From-SVN: r69571
2003-07-18aix.h (AGGREGATE_PADDING_FIXED): Define.David Edelsohn2-0/+30
* config/rs6000/aix.h (AGGREGATE_PADDING_FIXED): Define. (AGGREGATES_PAD_UPWARD_ALWAYS): Define. (MUST_PASS_IN_STACK): Define. (BLOCK_REG_PADDING): Define. From-SVN: r69570
2003-07-18cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p to skip the addr_vec.Richard Henderson2-10/+12
* cfgrtl.c (force_nonfallthru_and_redirect): Use tablejump_p to skip the addr_vec. From-SVN: r69569