1. 25 Mar, 2012 5 commits
  2. 24 Mar, 2012 5 commits
    • Implement return type deduction for normal functions with -std=c++1y. · 852497a3
      	* cp-tree.h (FNDECL_USED_AUTO): New macro.
      	(LAMBDA_EXPR_DEDUCE_RETURN_TYPE_P): Remove.
      	(dependent_lambda_return_type_node): Remove.
      	(CPTI_DEPENDENT_LAMBDA_RETURN_TYPE): Remove.
      	(struct language_function): Add x_auto_return_pattern field.
      	(current_function_auto_return_pattern): New.
      	(enum tsubst_flags): Add tf_partial.
      	* decl.c (decls_match): Handle auto return comparison.
      	(duplicate_decls): Adjust error message for auto return.
      	(cxx_init_decl_processing): Remove dependent_lambda_return_type_node.
      	(cp_finish_decl): Don't do auto deduction for functions.
      	(grokdeclarator): Allow auto return without trailing return type in
      	C++1y mode.
      	(check_function_type): Defer checking of deduced return type.
      	(start_preparsed_function): Set current_function_auto_return_pattern.
      	(finish_function): Set deduced return type to void if not previously
      	deduced.
      	* decl2.c (change_return_type): Handle error_mark_node.
      	(mark_used): Always instantiate functions with deduced return type.
      	Complain about use if deduction isn't done.
      	* parser.c (cp_parser_lambda_declarator_opt): Use 'auto' for
      	initial return type.
      	(cp_parser_lambda_body): Don't deduce return type in a template.
      	(cp_parser_conversion_type_id): Allow auto in C++1y.
      	* pt.c (instantiate_class_template_1): Don't mess with
      	LAMBDA_EXPR_DEDUCE_RETURN_TYPE_P.
      	(tsubst_copy_and_build): Likewise.
      	(fn_type_unification, tsubst): Don't reduce the template parm level
      	of 'auto' during deduction.
      	(unify): Compare 'auto' specially.
      	(get_bindings): Change test.
      	(always_instantiate_p): Always instantiate functions with deduced
      	return type.
      	(do_auto_deduction): Handle error_mark_node and lambda context.
      	Don't check for use in initializer.
      	(contains_auto_r): Remove.
      	* search.c (lookup_conversions_r): Handle auto conversion function.
      	* semantics.c (lambda_return_type): Handle null return.  Don't mess
      	with dependent_lambda_return_type_node.
      	(apply_deduced_return_type): Rename from apply_lambda_return_type.
      	* typeck.c (merge_types): Handle auto.
      	(check_return_expr): Do auto deduction.
      	* typeck2.c (add_exception_specifier): Fix complain check.
      
      From-SVN: r185768
      Jason Merrill committed
    • expr.c (optimize_bitfield_assignment_op): Use str_mode and str_bitsize instead… · 8c5f2327
      expr.c (optimize_bitfield_assignment_op): Use str_mode and str_bitsize instead of more convoluted expressions.
      
      	* expr.c (optimize_bitfield_assignment_op) <BIT_IOR_EXPR>: Use str_mode
      	and str_bitsize instead of more convoluted expressions.
      
      From-SVN: r185767
      Eric Botcazou committed
    • re PR target/52610 (mpfr fails to compile when specifying CFLAGS="-O3 -mcpu=leon") · c4133027
      	PR target/52610
      	* config/sparc/sparc.h (ASM_CPU_SPEC): Pass -Av8 if -mcpu=leon.
      
      From-SVN: r185765
      Eric Botcazou committed
    • re PR middle-end/52656 (gcc.target/sparc/fpmul-2.c FAILs) · f26c81d6
      	PR target/52656
      	* config/sparc/sparc.c (sparc_handle_vis_mul8x16): Fix pasto.
      
      From-SVN: r185764
      Eric Botcazou committed
    • Daily bump. · a0d058a5
      From-SVN: r185756
      GCC Administrator committed
  3. 23 Mar, 2012 14 commits
  4. 22 Mar, 2012 16 commits