1. 02 Jan, 2006 1 commit
  2. 30 Dec, 2005 1 commit
    • c-pretty-print.h (struct c_pretty_print_info): Add new member "constant". · a176426f
      2005-12-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
      
              * c-pretty-print.h (struct c_pretty_print_info): Add new
                member
              "constant".
              (pp_constant): New macro.
              * c-pretty-print.c (pp_c_pretty_printer_init): Set
                pp->constant.
      
      cp/
      2005-12-30  Gabriel Dos Reis  <gdr@integrable-solutions.net>
      
              * cxx-pretty-print.c (pp_cxx_constant): New.  Print
              string-literal in parens if input program says so.
              (pp_cxx_primary_expression): Hand off constant printing to
              pp_cxx_constant.
              (pp_cxx_pretty_printer_init): Set pp->c_base.constant.
              (pp_cxx_expression): Use pp_cxx_constant for literals.
              * error.c (dump_expr): Use pp_constant for literals.
      
      From-SVN: r109176
      Gabriel Dos Reis committed
  3. 29 Dec, 2005 1 commit
  4. 27 Dec, 2005 2 commits
    • re PR c++/25439 ("template<> int A<0>" accepted) · d85d3d57
      	PR c++/25439
      	* decl.c (grokdeclarator): Remove dead code.
      	* ptree.c (cxx_print_xnode): Handle BASELINK.
      	* parser.c (make_id_declarator): Add sfk parameter.  
      	(cp_parser_direct_declarator): Do not pass TYPE_DECLs to
      	make_id_declarator.
      	(cp_parser_declarator_id): Simplify BASELINKs here.
      	(cp_parser_member_declaration): Adjust calls to
      	make_id_declarator.
      	PR c++/25439
      	* g++.dg/parse/crash17.C: Adjust error markers.
      	* g++.dg/template/error20.C: New test.
      
      From-SVN: r109079
      Mark Mitchell committed
    • PR c++/23171, c++/23172, c++/25417. · 3b2db49f
      	* c-decl.c (compound_literal_number): Remove.
      	(build_compound_literal): Use set_compound_literal_name.
      	* c-common.c (compound_literal_number): New variable.
      	(set_compound_literal_name): New function.
      	* c-common.h (set_compound_literal_name): Declare.
      
      	PR c++/23171, c++/23172, c++/25417.
      	* typeck.c (build_unary_op): Create temporary variables for
      	compound literals whose addresses are taken.
      	* init.c (expand_aggr_init_1): Use COMPOUND_LITERAL_P.
      	* decl.c (reshape_init_vector): Likewise.
      	(reshape_init): Give it external linkage.
      	(check_initializer): Use COMPOUND_LITERAL_P.
      	(initialize_artificial_var): Allow the initializer to be a
      	CONSTRUCTOR.
      	* call.c (make_temporary_var_for_ref_to_temp): Use
      	create_temporary_var.
      	* cp-tree.h (COMPOUND_LITERAL_P): New macro.
      	(rehape_init): Declare.
      	* typeck2.c (digest_init): Use COMPOUND_LITERAL_P.
      	* semantics.c (finish_compound_literal): Use reshape_init.
      
      	PR c++/23172
      	* g++.dg/ext/complit4.C: New test.
      
      	PR c++/25417
      	* g++.dg/ext/complit5.C: Likewise.
      
      From-SVN: r109075
      Mark Mitchell committed
  5. 23 Dec, 2005 3 commits
  6. 22 Dec, 2005 2 commits
    • re PR c++/25364 (ICE with function pointer as template parameter) · d4f0f205
      	PR c++/25364
      	* typeck.c (build_unary_op): Pass DECLs not names to
      	build_offset_refs.
      	* init.c (build_offset_ref): Do not do name lookup.  Do not call
      	mark_used.
      	* call.c (build_call): Simplify and tidy.
      	* semantics.c (finish_qualified_id_expr): Call mark_used.
      	PR c++/25364
      	* g++.dg/template/call4.C: New test.
      
      From-SVN: r108973
      Mark Mitchell committed
    • re PR c++/23333 (accepts invalid pure specifier) · ab84748a
      2005-12-22  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
      
      	PR c++/23333
      	* include/cpplib.h: Add PURE_ZERO to flags for the cpp_token structure.
      
      	* c-lex.c (c_lex_with_flags): Add PURE_ZERO to cpp_flags if
      	number is a single digit '0'.
      
      	* parser.c (cp_parser_pure_specifier): Check for PURE_ZERO to
      	identify a single '0'.
      
      	* g++.dg/parse/error25.C: Add more tests.
      
      From-SVN: r108947
      Volker Reichelt committed
  7. 20 Dec, 2005 3 commits
  8. 18 Dec, 2005 1 commit
    • re PR fortran/25018 (Segfault with simple expression) · e7f79e12
      2005-12-18  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/25018
      	*expr.c(check_inquiry): Return FAILURE if there is no symtree to
      	provide a name. Error/warning for assumed character length argument
      	to LEN for an initialization expression, using GFC_GNU_STD. Add an
      	argument to flag that the expression is not restricted.
      	(check_init_expr): Improve the message for a failing variable.
      	(gfc_match_init_expr): Call check_enquiry again to make sure that
      	unsimplified expressions are not causing unnecessary errors.
      
      2005-12-18  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/25018
      	*gfortran.dg/initialization_1.f90: New test.
      	*gfortran.dg/enum_5.f90: Change dg-error to new message.
      	*gfortran.dg/g77/980616-0.f: The same.
      
      From-SVN: r108753
      Paul Thomas committed
  9. 16 Dec, 2005 1 commit
  10. 13 Dec, 2005 1 commit
    • re PR c++/24907 ("int x, ;" accepted) · 6d328225
      2005-12-13  Petr Machata  <machata@post.cz>
      
      	PR c++/24907
      	* parser.c (cp_parser_simple_declaration): Require comma at the
      	beginning of processing second and later declarators, instead of
      	allowing the comma at the end of each iteration.
      
      	* g++.dg/parse/comma2.C: New test.
      
      From-SVN: r108462
      Petr Machata committed
  11. 12 Dec, 2005 2 commits
  12. 11 Dec, 2005 1 commit
  13. 08 Dec, 2005 1 commit
  14. 07 Dec, 2005 4 commits
    • * cp-gimplify.c (gimplify_cp_loop): Use fold_build3. · 3a0fddee
      From-SVN: r108192
      Volker Reichelt committed
    • sourcebuild.texi (all.build, [...]): Remove. · bd97af06
      gcc/
      	* doc/sourcebuild.texi (all.build, install-normal): Remove.
      	* configure.ac: Remove all.build and install-normal from target_list
      	* configure: Regenerate.
      	* Makefile.in (install): Don't depend on install-normal.
      gcc/java/
      	* Make-lang.in (java.all.build, java.install-normal): Remove.
      gcc/objc/
      	* Make-lang.in (objc.all.build, objc.install-normal): Remove.
      gcc/objcp/
      	* Make-lang.in (obj-c++.all.build, obj-c++.install-normal): Remove.
      gcc/cp/
      	* Make-lang.in (c++.all.build, c++.install-normal): Remove.
      gcc/ada/
      	* Make-lang.in (ada.install-normal): Remove.
      gcc/fortran/
      	* Make-lang.in (fortran.all.build, fortran.install-normal): Remove.
      gcc/treelang/
      	* Make-lang.in (treelang.all.build, treelang.install-normal): Remove.
      
      From-SVN: r108158
      Rafael Ávila de Espíndola committed
    • gty.texi: Remove instructions for adding a dependency on s-gtype. · 2f4d2d18
      gcc/
      	* doc/gty.texi: Remove instructions for adding a dependency on s-gtype.
      	* Makefile.in: Add code to compute some dependencies on s-gtype
      	automatically.  Remove the declaration of those dependencies.
      gcc/java/
      	* Make-lang.in: Remove all dependencies on s-gtype, except for
      	gt-java-parse.h.
      gcc/objc/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      gcc/objcp/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      gcc/cp/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      gcc/ada/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      gcc/fortran/
      	* Make-lang.in: Remove all dependencies on s-gtype, except for
      	gt-fortran-trans.h.
      gcc/treelang/
      	* Make-lang.in: Remove all dependencies on s-gtype.
      
      From-SVN: r108155
      Alan Modra committed
  15. 06 Dec, 2005 4 commits
    • re PR c++/24138 (ICE with the code in PR 20407) · d7d93837
              PR C++/24138
              * tree.c (integer_all_onesp): Always return true if all bits on.
      
              * cp/decl.c (reshape_init_array_1): Handle max_index of -1.
      
              * testsuite/g++.dg/init/array0.C: New.
      
      From-SVN: r108126
      Aldy Hernandez committed
    • typeck.c (build_binary_op): Issue warning if either operand of a comparison… · eda0cd98
      typeck.c (build_binary_op): Issue warning if either operand of a comparison operator is a string literal...
      
      
      	* typeck.c (build_binary_op): Issue warning if either operand of a
      	comparison operator is a string literal, except for testing equality
      	or inequality against NULL.
      
      	* g++.dg/warn/Wstring-literal-comparison-1.C: New test case.
      	* g++.dg/warn/Wstring-literal-comparison-2.C: Likewise.
      	* g++.dg/warn/Wstring-literal-comparison-3.C: Likewise.
      	* g++.dg/warn/Wstring-literal-comparison-4.C: Likewise.
      
      From-SVN: r108120
      Roger Sayle committed
    • re PR c++/25263 (ICE on invalid array bound: int x[1/0];) · 9116d529
      	PR c++/25263
      	* decl.c (compute_array_index_type): Check that itype is an
      	INTEGER_CST node before testing/clearing TREE_OVERFLOW.
      
      	* g++.dg/other/array2.C: New test case.
      
      From-SVN: r108119
      Roger Sayle committed
    • In gcc/ 2005-12-05 Daniel Berlin <dberlin@dberlin.org> · 326eda4b
      In gcc/
      2005-12-05  Daniel Berlin  <dberlin@dberlin.org>
      	
      	* print-tree.c (print_node): Ditto.
      	* tree-dfa.c (add_referenced_var): Tag's don't have DECL_INITIAL.
      	* tree-dump.c (dequeue_and_dump): Check for decl_common structure
      	before accessing DECL_ARTIFICIAL. 
      	Handle new tag tree codes.
      	* tree-flow-inline.h (clear_call_clobbered): Update for tag
      	changes.
      	(unmodifiable_var_p): Ditto.
      	* tree-flow.h (mem_tag_kind): Remove.
      	(struct var_ann_d): Remove mem_tag_kind member.
      	* tree-gimple.c (is_gimple_reg): Tags are not gimple registers.
      	* tree-pretty-print.c (dump_generic_node): Handle memory tags.
      	* tree-ssa-alias.c (init_alias_info): Update for memory tag changes.
      	(group_aliases): Ditto.
      	(setup_pointers_and_addressables): Ditto.
      	(is_escape_site): Ditto.					  
      	(may_alias_p): Ditto.
      	(create_tag_raw): New function.
      	(create_memory_tag): Use it.
      	(dump_alias_info): Update for tags.
      	(may_be_aliased): Ditto.
      	(add_type_alias): Ditto.
      	(new_type_alias): Ditto.
      	(create_sft): Ditto.
      	(create_structure_vars): Ditto.
      	* tree-ssa-ccp.c (get_default_value): Ditto.
      	* tree-ssa-operands.c (get_expr_operands): Ditto.
      	(add_stmt_operand): Ditto.
      	(add_call_clobber_ops): Remove duplicated condition.
      	* tree-ssa.c (verify_flow_insensitive_alias_info): Update for
      	tags.
      	* tree-tailcall.c (suitable_for_tail_opt_p): Ditto.
      	* tree-vect-transform.c (vect_create_data_ref_ptr): Ditto.
      	* tree.c (init_ttree): Update structures for new tree codes.
      	(tree_code_size): Update sizes for new tree codes.
      	(make_node_stat): Don't try to set common things on minimal
      	structures.
      	(tree_node_structure): Update for tags.
      	(is_global_var): Ditto.
      	* tree.def: Add new tree codes.
      	* tree.h (MTAG_P): New macro.
      	(TREE_MEMORY_TAG_CHECK): Ditto.
      	(SSA_VAR_P): Update for tags.
      	(struct tree_memory_tag): New structure.
      	(MTAG_GLOBAL): New macro.
      	(union tree_node): Add memory tag member.
      	* treestruct.def (TS_MEMORY_TAG): New.
      
      In gcc/cp
      
      2005-12-05  Daniel Berlin  <dberlin@dberlin.org>
      
      	* ptree.c (cxx_print_decl): Update to check for decl_common
      	structure.
      
      From-SVN: r108102
      Daniel Berlin committed
  16. 03 Dec, 2005 1 commit
  17. 02 Dec, 2005 4 commits
    • semantics.c (simplify_aggr_init_expr): Use buildN instead of build. · d17791d6
      2005-12-02  Richard Guenther  <rguenther@suse.de>
      
      	* semantics.c (simplify_aggr_init_expr): Use buildN instead
      	of build.
      
      From-SVN: r107903
      Richard Guenther committed
    • ggc.h (GGC_RESIZEVEC): New. · 7767580e
              * ggc.h (GGC_RESIZEVEC): New.
      
      cp/
              * parser.c (cp_lexer_new_main): Usr GGC_RESIZEVEC instead of 
              ggc_realloc.
              (cp_parser_template_argument_list): Use XRESIZEVEC instead of xrealloc.
              * class.c (pushclass): Likewise.
      
      From-SVN: r107887
      Gabriel Dos Reis committed
    • decl2.c (get_priority_info): Use XNEW, not xmalloc. · 0ac1b889
              * decl2.c (get_priority_info): Use XNEW, not xmalloc.
              * decl.c (push_switch): Likewise.
              * lex.c (handle_pragma_implementation): Likewise.
              * cp-objcp-common.c (decl_shadowed_for_var_insert): Use GGC_NEW,
              not ggc_alloc.
              (cxx_initialize_diagnostics): Use XNEW, not xmalloc.
              * class.c (init_class_processing): Use XNEWVEC, not xmalloc.
              * g++spec.c (lang_specific_driver): Likewise.
              * mangle.c (save_partially_mangled_name): Likewise.
              * parser.c (cp_lexer_new_main): Use GGC_NEWVEC, not ggc_alloc.
              (cp_parser_template_argument_list): Use XNEWVEC, nto xmalloc.
              (cp_parser_sizeof_operand): Likewise.
              * repo.c (open_repo_file, open_repo_file): Likewise.
      
      From-SVN: r107884
      Gabriel Dos Reis committed
    • parser.c (cp_parser_make_typename_type): Call make_typename_type with tf_none… · 8da15291
      parser.c (cp_parser_make_typename_type): Call make_typename_type with tf_none instead of magic value 0.
      
              * parser.c (cp_parser_make_typename_type): Call make_typename_type
              with tf_none instead of magic value 0.
              (cp_parser_explicit_instantiation): Call do_type_instantiation
              with tf_error instead of magic value 1.
              (cp_parser_elaborated_type_specifier): Call make_typename_type
              with tf_error instead of magic value 1.
              (cp_parser_class_name): Likewise.
              (cp_parser_lookup_name): Likewise.
      
      From-SVN: r107855
      Gabriel Dos Reis committed
  18. 01 Dec, 2005 1 commit
  19. 30 Nov, 2005 1 commit
  20. 29 Nov, 2005 1 commit
  21. 28 Nov, 2005 1 commit
    • re PR c++/21166 (g++ gives error on reference to packed structure elements) · 646c0835
      .:	PR c++/21166
      	* c-decl.c (finish_struct):  Only set DECL_PACKED on a field
      	when its natural alignment is > BITS_PER_UNIT.
      	* stor-layout.c (finalize_type_size): Revert my patch of 2005-08-08.
      	* c-common.c (handle_packed_attribute): Ignore packing on a field
      	whose type is naturally char aligned.
      cp:
      	PR c++/21166
      	* class.c (check_field_decls): Only set DECL_PACKED on a field
      	when its natural alignment is > BITS_PER_UNIT.
      
      From-SVN: r107599
      Nathan Sidwell committed
  22. 27 Nov, 2005 1 commit
  23. 26 Nov, 2005 1 commit
    • c-lex.c (pragma_lex): Rename from c_lex. · 75ce3d48
              * c-lex.c (pragma_lex): Rename from c_lex.
              * c-pch.c: Update for pragma_lex rename.
              * c-pragma.c, c-pragma.h, config/ia64/ia64-c.c: Likewise.
              * config/m32c/m32c-pragma.c, config/darwin-c.c: Likewise.
              * config/rs6000/rs6000-c.c, config/c4x/c4x-c.c: Likewise.
              * config/sol2-c.c, config/v850/v850-c.c: Likewise.
              * doc/tm.texi: Likewise.
      cp/
              * lex.c: Update for pragma_lex rename.
              * parser.c: Likewise.
      
      From-SVN: r107544
      Richard Henderson committed
  24. 25 Nov, 2005 1 commit