1. 17 Jan, 2008 10 commits
    • 20080114-1.c: Use empty asm statements. · 7c1950cd
      	* gcc.c-torture/compile/20080114-1.c: Use empty asm statements.
      
      From-SVN: r131596
      Eric Botcazou committed
    • re PR tree-optimization/34825 (ICE with -funsafe-math-optimizations) · 8a5b57cd
      2008-01-17  Richard Guenther  <rguenther@suse.de>
      
      	PR tree-optimization/34825
      	* tree-ssa-math-opts.c (is_division_by): Do not recognize
      	x / x as division to handle.
      
      	* gcc.dg/pr34825.c: New testcase.
      
      From-SVN: r131595
      Richard Guenther committed
    • 20080117-1.c: New testcase. · f779b9ae
      2008-01-17  Richard Guenther  <rguenther@suse.de>
      
              * gcc.c-torture/execute/20080117-1.c: New testcase.
      
      From-SVN: r131594
      Richard Guenther committed
    • Fix pr30957-1.c testcase · 57c8cf5d
      From-SVN: r131593
      Revital Eres committed
    • re PR fortran/34429 (Fails: character(len=use_associated_const) function foo()) · 1c8bcdf7
      2008-01-17  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/34429
      	PR fortran/34431
      	PR fortran/34471
      	* decl.c : Remove gfc_function_kind_locus and
      	gfc_function_type_locus. Add gfc_matching_function.
      	(match_char_length): If matching a function and the length
      	does not match, return MATCH_YES and try again later.
      	(gfc_match_kind_spec): The same.
      	(match_char_kind): The same.
      	(gfc_match_type_spec): The same for numeric and derived types.
      	(match_prefix): Rename as gfc_match_prefix.
      	(gfc_match_function_decl): Except for function valued character
      	lengths, defer applying kind, type and charlen info until the
      	end of specification block.
      	gfortran.h (gfc_statement): Add ST_GET_FCN_CHARACTERISTICS.
      	parse.c (decode_specification_statement): New function.
      	(decode_statement): Call it when a function has kind = -1. Set
      	and reset gfc_matching function, as function statement is being
      	matched.
      	(match_deferred_characteristics): Simplify with a single call
      	to gfc_match_prefix. Do appropriate error handling. In any
      	case, make sure that kind = -1 is reset or corrected.
      	(parse_spec): Call above on seeing ST_GET_FCN_CHARACTERISTICS.
      	Throw an error if kind = -1 after last specification statement.
      	parse.h : Prototype for gfc_match_prefix.
      
      2008-01-17  Paul Thomas  <pault@gcc.gnu.org>
      
      	PR fortran/34429
      	* gfortran.dg/function_charlen_1.f90: New test.
      
      	PR fortran/34431
      	* gfortran.dg/function_types_1.f90: New test.
      	* gfortran.dg/function_types_2.f90: New test.
      
      	PR fortran/34471
      	* gfortran.dg/function_kinds_4.f90: New test.
      	* gfortran.dg/function_kinds_5.f90: New test.
      
      	* gfortran.dg/defined_operators_1.f90: Errors now at function
      	declarations.
      	* gfortran.dg/private_type_4.f90: The same.
      	* gfortran.dg/interface_15.f90: The same.
      	* gfortran.dg/elemental_args_check_2.f90: The same.
      	* gfortran.dg/auto_internal_assumed.f90: The same.
      
      From-SVN: r131592
      Paul Thomas committed
    • Log entry for last change. · e7ce29e7
      From-SVN: r131591
      John David Anglin committed
    • pa64-hpux.h (LIB_SPEC): Add "-lpthread" in shared links if "-mt" or "-pthread" is specified. · 4d6f8e56
      	* pa64-hpux.h (LIB_SPEC): Add "-lpthread" in shared links if "-mt" or
      	"-pthread" is specified.
      	* pa-hpux11.h (LIB_SPEC): Likewise.
      
      From-SVN: r131590
      John David Anglin committed
    • re PR rtl-optimization/33796 (valgrind error with -O2 for linux kernel code) · 37b87a3a
      	PR rtl-optimization/33796
      	* sparseset.c (sparseset_alloc): Use xcalloc rather than xmalloc.
      
      Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
      
      From-SVN: r131589
      Janis Johnson committed
    • re PR libfortran/34699 (FAIL:… · 6595ec51
      re PR libfortran/34699 (FAIL: gfortran.fortran-torture/execute/intrinsic_set_exponent.f90 execution)
      
      	PR libgfortran/34699
      	* pa-hpux.h (LINK_SPEC): Only search /lib/pa1.1 and /usr/lib/pa1.1 on
      	static links.
      	* pa-hpux10.h (LINK_SPEC): Likewise.
      	* pa-hpux11.h (LINK_SPEC): Don't search /lib/pa1.1 and /usr/lib/pa1.1.
      
      From-SVN: r131586
      John David Anglin committed
    • Daily bump. · 8f90eb97
      From-SVN: r131584
      GCC Administrator committed
  2. 16 Jan, 2008 21 commits
  3. 15 Jan, 2008 9 commits
    • f95-lang.c (gfc_init_builtin_functions): Initialize GOMP builtins for flag_tree_parallelize_loops. · e0e8ce7a
      2008-01-15  Sebastian Pop  <sebastian.pop@amd.com>
      
      	* f95-lang.c (gfc_init_builtin_functions): Initialize GOMP builtins
      	for flag_tree_parallelize_loops.
      
      From-SVN: r131556
      Sebastian Pop committed
    • parser.c (cp_parser_template_parameter): Fix C90 issue with mixing declaration and code. · cde7bfee
      2008-01-15  Andreas Tobler  <a.tobler@schweiz.org>
      
              * parser.c (cp_parser_template_parameter): Fix C90 issue with mixing
              declaration and code.  Update copyright year.
      
      From-SVN: r131555
      Andreas Tobler committed
    • re PR libfortran/34671 (any(kind=1) and all(kind=1)) · 90469382
      2008-01-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR libfortran/34671
      	* gfortran.am: Added _gfortran_all_l1, _gfortran_all_l2,
      	_gfortran_any_l1, _gfortran_any_l2, -28,15 _gfortran_count_1_l,
      	_gfortran_count_16_l, _gfortran_count_2_l, _gfortran_count_4_l and
      	_gfortran_count_8_l Removed _gfortran_count_16_l16,
      	_gfortran_count_16_l4, _gfortran_count_16_l8,
      	_gfortran_count_4_l16, _gfortran_count_4_l4, _gfortran_count_4_l8,
      	_gfortran_count_8_l16, _gfortran_count_8_l4 and
      	_gfortran_count_8_l8.
      	* Makefile.am: Added generated/any_l1.c and generated/any_l2.c to
      	i_any_c.  Added generated/all_l1. and generated/all_l2.c to
      	i_all_c.  Removed generated/count_4_l4.c, generated/count_8_l4.c,
      	generated/count_16_l4.c, generated/count_4_l8.c,
      	generated/count_8_l8.c, generated/count_16_l8.c,
      	generated/count_4_l16.c, generated/count_8_l16.c, and
      	generated/count_16_l16.c from i_count_c.  Added count_1_l.c,
      	count_2_l.c, count_4_l.c, count_8_l.c and count_16_l.c to
      	i_count_c.  I_M4_DEPS2 depends on ifunction_logical.m4, for
      	any of the files generated from all.m4, any.m4 and count.m4.
      	* Makefile.in:  Regenerated.
      	* m4/ifunction_logical.m4:  New file.  Use
      	GFC_LOGICAL_1 pointer for access to source arrays.
      	* m4/any.m4:  Include ifunction_logical.m4 instead of
      	ifunction.m4.  Don't check atype_name.
      	* m4/all.m4:  Likewise.
      	* m4/count.m4:  Likewise.
      	* generated/any_l1.c:  New file.
      	* generated/any_l2.c:  New file.
      	* generated/all_l1.c:  New file.
      	* generated/count_1_l.c:  New file.
      	* generated/count_2_l.c:  New file.
      	* generated/count_4_l.c:  New file.
      	* generated/count_8_l.c:  New file.
      	* generated/count_16_l.c:  New file.
      	* generated/any_l4.c:  Regenerated.
      	* generated/any_l8.c:  Regenerated.
      	* generated/any_l16.c:  Regenerated.
      	* generated/all_l4.c: Regenerated.
      	* generated/all_l8.c: Regenerated.
      	* generated/all_l16.c: Regenerated.
      	* generated/count_4_l4.c:  Removed.
      	* generated/count_4_l8.c:  Removed.
      	* generated/count_4_l16.c:  Removed.
      	* generated/count_8_l4.c:  Removed.
      	* generated/count_8_l8.c:  Removed.
      	* generated/count_8_l16.c:  Removed.
      	* generated/count_16_l4.c:  Removed.
      	* generated/count_16_l8.c:  Removed.
      	* generated/count_16_l16.c:  Removed.
      
      2008-01-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
      
      	PR libfortran/34671
      	* iresolve.c (gfc_resolve_all):  Call resolve_mask_arg.
      	(gfc_resolve_any):  Likewise.
      	(gfc_resolve_count):  Likewise.  Don't append kind of
      	argument to function name.
      
      2008-01-15  Thomas Koenig  <tkoenig@gcc.gnu.org>
      	
      	PR libfortran/34671
      	* gfortran.dg/anyallcount_1.f90:  New test.
      
      From-SVN: r131553
      Thomas Koenig committed
    • re PR c++/34399 (ICE on invalid friend declaration of variadic template) · ac90ae18
      2008-01-15  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR c++/34399
      	* friend.c (do_friend): Don't query TYPE_BEING_DEFINED unless we
      	know we have a class type.
      
      2008-01-15  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR c++/34399
      	* g++.dg/cpp0x/vt-34399.C: New.
      	* g++.dg/template/friend50.C: New.
      
      From-SVN: r131552
      Douglas Gregor committed
    • Clarify the second argument usage for "c-fix"-es. · 44b962f2
      From-SVN: r131550
      Bruce Korb committed
    • Clarify the second argument usage for "c-fix"-es. · 5af3679c
      From-SVN: r131549
      Bruce Korb committed
    • re PR c++/34751 (ICE with pointer to member and variadic templates) · cdcae745
      2008-01-15  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR c++/34751
      	* pt.c (coerce_template_parameter_pack): When substituting into
      	the type of a non-type template parameter pack. use the
      	deduced/substituted arguments.
      	* parser.c (declarator_can_be_parameter_pack): A pointer-to-member
      	can be a parameter pack with the ellipsis following it.  When we
      	have an erroneous declaration, allow it to be a parameter pack.
      	(cp_parser_template_parameter): Complain about default
      	arguments on non-type template parameter packs, and parse them
      	using the new cp_parser_default_argument.
      	(cp_parser_parameter_declaration): Complain about parameter packs
      	with default arguments. Move parsing of default arguments into a
      	new function, cp_parser_default_argument.
      	(cp_parser_default_argument): New; extracted from
      	cp_parser_parameter_declaration.
      
      2008-01-15  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR c++/34751
      	* g++.dg/cpp0x/vt-34751.C: New.
      
      From-SVN: r131548
      Douglas Gregor committed
    • re PR c++/34051 (ICE in dependent_type_p with variadic templates) · 4439d02f
      2008-01-15  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR c++/34051
      	PR c++/34055
      	PR c++/34102
      	PR c++/34103
      	* typeck.c (check_return_expr): If there are bare parameter packs
      	in the return value, set it to error_mark_node.
      	* tree.c (cp_walk_subtrees): Walk USING_DECL nodes.
      	* pt.c (find_parameter_packs_r): Look at the type of
      	IDENTIFIER_NODEs (e.g., for user-defined conversions).
      	(check_for_bare_parameter_packs): Flip the result: now returns
      	TRUE when there were bare parameter packs, FALSE otherwise.
      	(push_template_decl_real): Deal with flipped result of
      	check_for_bare_parameter_packs.
      	* semantics.c (finish_cond): If there are bare parameter packs in
      	the conditional, set it to error_mark_node.
      	(finish_expr_stmt): If there are bare parameter packs in the
      	expression, set it to error_mark_node.
      	(finish_for_expr): Ditto.
      	(finish_switch_cond): If there are bare parameter packs in
      	the conditional, set it to error_mark_node.
      	(finish_mem_initializers): If there are bare parameter packs in
      	the member initializer, set it to error_mark_node.
      	(finish_member_declaration): Check the attributes of the
      	declaration for bare parameter packs, and remove the attributes if
      	any have bare parameter packs.
      	* parser.c (cp_parser_using_declaration): Check the using
      	declaration for bare parameter packs.
      	(cp_parser_base_clause): If there are bare parameter packs in a
      	base specifier, don't add it to the chain.
      
      2008-01-15  Douglas Gregor  <doug.gregor@gmail.com>
      
      	PR c++/34051
      	PR c++/34055
      	PR c++/34102
      	PR c++/34103
      	* g++.dg/cpp0x/vt-34051-2.C: New.
      	* g++.dg/cpp0x/vt-34102.C: New.
      	* g++.dg/cpp0x/vt-34051.C: New.
      	* g++.dg/cpp0x/vt-34055.C: New.
      	* g++.dg/cpp0x/vt-34103.C: New.
      
      From-SVN: r131547
      Douglas Gregor committed
    • re PR c++/34314 (ICE on invalid code (with variadic templates): tree check:… · a022041e
      re PR c++/34314 (ICE on invalid code (with variadic templates): tree check: expected class ‘type’, have ‘exceptional’ (error_mark) in template_class_depth)
      
      2008-01-15  Douglas Gregor  <doug.gregor@gmail.com>
      
             PR c++/34314
             * error.c (dump_simple_decl): Display ellipsis for template
             non-type parameter packs.
             (dump_decl): Display ellipsis for template type parameter packs.
             (dump_template_decl): Display ellipsis for template template
             parameter packs.
             * pt.c (redeclare_class_template): When redeclaring a class
             template, check for collisions between template parameters and
             template parameter packs.
      
      2008-01-15  Douglas Gregor  <doug.gregor@gmail.com>
      
             PR c++/34314
             * g++.dg/cpp0x/vt-34314.C: New.
             * g++.dg/cpp0x/variadic79.C: Fix the error message to reflect
             reality (the error message was wrong previously).
      
      From-SVN: r131546
      Douglas Gregor committed