Commit Graph

111958 Commits

Author SHA1 Message Date
Paolo Carlini
8fb3401bdc pt.c (convert_nontype_argument): Handle NULLPTR_TYPE.
/cp
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	* pt.c (convert_nontype_argument): Handle NULLPTR_TYPE.

/testsuite
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/nullptr25.C: New.

From-SVN: r179199
2011-09-26 13:58:47 +00:00
Paolo Carlini
734e01f0a3 re PR c++/26747 (bad break/continue is not detected until the gimplifier)
2011-09-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/26747
	* cp-gimplify.c (get_bc_label): Remove obsolete diagnostics.

From-SVN: r179198
2011-09-26 13:51:52 +00:00
Richard Guenther
f8a7df4594 re PR tree-optimization/50472 (Volatile qualification in data is not enough to avoid optimization over pointer to data)
2011-09-26  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/50472
	* gimple-fold.c (fold_const_aggregate_ref_1): Do not fold
	volatile references.

	* gcc.dg/torture/pr50472.c: New testcase.

From-SVN: r179196
2011-09-26 12:58:35 +00:00
Bingfeng Mei
b5bcaa4a74 tm.texi: Correct documentation for TARGET_ADDR_SPACE_SUBSET_P.
2011-09-26  Bingfeng Mei <bmei@broadcom.com>
	* doc/tm.texi: Correct documentation for TARGET_ADDR_SPACE_SUBSET_P.
	* target.def: (addr_space_subset_p): Likewise.

From-SVN: r179195
2011-09-26 12:46:09 +00:00
Eric Botcazou
412dd7641e opt22.adb: New test.
2011-09-26  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat.dg/opt22.adb: New test.
	* gnat.dg/opt22_pkg.ad[sb]: New helper.

From-SVN: r179194
2011-09-26 12:41:17 +00:00
Tom de Vries
703ffc3005 tree-ssa-alias.h (pt_solution_singleton_p): Declare.
2011-09-26  Tom de Vries  <tom@codesourcery.com>

	* tree-ssa-alias.h (pt_solution_singleton_p): Declare.
	* tree-ssa-structalias.c (pt_solution_singleton_p): New function.
	* tree-ssa-ccp.c (fold_builtin_alloca_for_var): Set points-to solution
	of new var.

From-SVN: r179193
2011-09-26 12:36:56 +00:00
Tristan Gingold
750db0248d 2011-09-26 Tristan Gingold <gingold@adacore.com>
* inclhack.def (ms_define_can_use_extern_prefix):
	(vms_use_pragma_extern_model, vms_disable_decc_string_builtins):
	New fixes.
	* fixincl.x: Regenerate.
	* tests/base/rtldef/string.h: New test.
	* tests/base/rtldef/decc$types.h: Likewise.
	* tests/base/testing.h: Update

From-SVN: r179192
2011-09-26 12:12:51 +00:00
Georg-Johann Lay
8a6a05ce93 re PR target/50465 ([avr] Use insn attribute to depict if and how instruction lengths have to be adjusted)
PR target/50465
	* config/avr/avr-protos.h (output_reload_insisf): Don't pass insn.
	* config/avr/avr.md (*reload_insi, *reload_insf): Change call to
	output_reload_insisf.
	(adjust_len): Set default to "no".
	Remove alternative "yes".  Add alternatives: "mov8", "mov16",
	"mov32", "ashlqi", "ashrqi", "lshrqi", "ashlhi", "ashrhi",
	"lshrhi", "ashlsi, "ashrsi", "lshrsi".
	(*movqi, *movhi, *movsi, *ashlqi3, ashlhi3, ashlsi3,
	*ashlhi3_const, *ashlsi3_const, ashrqi3, ashrhi3, ashrsi3,
	*ashrhi3_const, *ashrsi3_const, *lshrqi3, lshrhi3, *lshrhi3_const,
	*lshrsi3_const): Set attribute "adjust_len".
	* config/avr/avr.c (output_reload_insisf): Remove parameter "insn".
	(output_movsisf): Don't pass insn to output_reload_insisf.
	(adjust_insn_length): Handle new alternatives to adjust_len.
	Remove handling of ADJUST_LEN_YES.  Clean-up code.

From-SVN: r179191
2011-09-26 11:53:40 +00:00
Eric Botcazou
2d0dd51a1a Fix oversight
From-SVN: r179190
2011-09-26 11:43:08 +00:00
Rainer Orth
58666503ad Restore Ada bootstrap on Solaris 8, 9/x86
From-SVN: r179189
2011-09-26 10:54:33 +00:00
Eric Botcazou
ce438663a8 ifcvt.c (noce_try_cmove_arith): Use may_trap_or_fault_p in lieu of may_trap_p to detect loads that may trap of...
* ifcvt.c (noce_try_cmove_arith): Use may_trap_or_fault_p in lieu of
	may_trap_p to detect loads that may trap of fault.

From-SVN: r179188
2011-09-26 09:49:02 +00:00
Eric Botcazou
bdbebf669e utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the dereference of the pointer to the storage area.
* gcc-interface/utils2.c (build_allocator): Set TREE_THIS_NOTRAP on the
	dereference of the pointer to the storage area.  Remove useless type
	conversions and factor out common code.

From-SVN: r179187
2011-09-26 09:21:01 +00:00
Eric Botcazou
1aa291f7d1 utils.c (maybe_unconstrained_array): Declare TYPE local variable and use it throughout.
* gcc-interface/utils.c (maybe_unconstrained_array): Declare TYPE local
	variable and use it throughout.
	<UNCONSTRAINED_ARRAY_TYPE>: Add 'break' at the end.
	<RECORD_TYPE>: Do not unconditionally convert to the unpadded type as a
	first step.  Also convert to the unpadded type as a last step.

From-SVN: r179186
2011-09-26 09:03:52 +00:00
Eric Botcazou
7d76717db8 gigi.h (create_subprog_decl): Replace TREE_CHAIN with DECL_CHAIN in comment.
* gcc-interface/gigi.h (create_subprog_decl): Replace TREE_CHAIN with
	DECL_CHAIN in comment.
	* gcc-interface/trans.c (gigi): Likewise.
	(Attribute_to_gnu): Likewise.
	(build_function_stub): Likewise.
	(gnat_to_gnu): Likewise.
	* gcc-interface/utils.c (create_subprog_decl): Likewise.
	(convert_vms_descriptor64): Likewise.
	(convert_vms_descriptor32): Likewise.

From-SVN: r179185
2011-09-26 08:50:16 +00:00
Eric Botcazou
42acad07c0 trans.c (assoc_to_constructor): Minor tweaks.
* gcc-interface/trans.c (assoc_to_constructor): Minor tweaks.
	* gcc-interface/utils2.c (build_simple_component_ref): Fix formatting
	issues.  Use COMPLETE_TYPE_P in assertion.  Also set TREE_READONLY if
	the type of the record is TYPE_READONLY.

From-SVN: r179184
2011-09-26 08:45:36 +00:00
Eric Botcazou
a1d7228158 sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN OUT formal parameter which is of an...
* sem_ch6.adb (Set_Formal_Mode): Set Can_Never_Be_Null on an IN or IN
	OUT formal parameter which is of an null-exclusion access subtype.

Co-Authored-By: Robert Dewar <dewar@adacore.com>

From-SVN: r179183
2011-09-26 08:37:32 +00:00
Eric Botcazou
a1c7d7973c ada-tree.h (DECL_CAN_NEVER_BE_NULL_P): New macro.
* gcc-interface/ada-tree.h (DECL_CAN_NEVER_BE_NULL_P): New macro.
	* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Set the flag.
	(gnat_to_gnu_param): Likewise.
	* gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Invoke
	maybe_unconstrained_array instead of doing the work manually.
	(maybe_unconstrained_array): Propagate the TREE_THIS_NOTRAP flag.
	* gcc-interface/utils2.c (build_unary_op) <INDIRECT_REF>: If operand
	is a DECL with the flag, set TREE_THIS_NOTRAP on the reference.
	(gnat_stabilize_reference_1): Propagate the TREE_THIS_NOTRAP flag.
	(gnat_stabilize_reference): Likewise.

From-SVN: r179182
2011-09-26 08:26:37 +00:00
Georg-Johann Lay
20633efc34 avr-protos.h (output_reload_inhi): Change prototype.
* config/avr/avr-protos.h (output_reload_inhi): Change prototype.
	* config/avr/avr.md (adjust_len): Add "reload_in16" alternative.
	(*reload_inhi): Use it.  Adapt call to output_reload_inhi to new
	prototype.
	(*movhi): Split constraint alternative "r,rL" into "r,r" and "r,L".
	* config/avr/avr.c: Rename output_reload_insisf_1 to
	output_reload_in_const.
	(avr_popcount_each_byte): Handle SFmode, too.
	(output_reload_in_const): Change so it can handle HI loads, too.
	Use avr_popcount_each_byte to work out if scratch register must be
	created on the fly.
	(output_reload_inhi): Rewrite using output_reload_in_const and...
	(output_movhi): ...use it to print constants' loads.
	(adjust_insn_length): New case ADJUST_LEN_RELOAD_IN16. Cleanup code.

From-SVN: r179181
2011-09-26 08:14:25 +00:00
Eric Botcazou
50179d5882 ada-tree.h (TYPE_NULL_BOUNDS): New macro.
* gcc-interface/ada-tree.h (TYPE_NULL_BOUNDS): New macro.
	(SET_TYPE_NULL_BOUNDS): Likewise.
	* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Type>: Set again
	TREE_THIS_NOTRAP on the INDIRECT_REF node built for the template.
	* gcc-interface/trans.c (Identifier_to_gnu): Return initializers of fat
	pointer types.
	* gcc-interface/utils.c (create_var_decl_1): If the object is external,
	check that the initializer is a valid constant expression for use in
	initializing a static variable.  Add missing guard.
	(update_pointer_to): Adjust TYPE_NULL_BOUNDS if set.
	(convert_to_fat_pointer): In the null fat pointer case, build a valid
	pointer for the bounds.
	* gcc-interface/utils2.c (compare_fat_pointers): New function.
	(build_binary_op) <EQ_EXPR>: Call it to compare fat pointers.

From-SVN: r179180
2011-09-26 07:52:58 +00:00
Jason Merrill
382346e535 parser.c (inject_this_parameter): Split out from cp_parser_late_return_type_opt.
* parser.c (inject_this_parameter): Split out from
	cp_parser_late_return_type_opt.
	(cp_parser_class_specifier_1): Use it for NSDMIs.
	* tree.c (bot_replace): Replace NSDMI 'this' with real 'this'.

From-SVN: r179179
2011-09-25 23:56:10 -04:00
GCC Administrator
02aaf894b5 Daily bump.
From-SVN: r179178
2011-09-26 00:19:12 +00:00
David S. Miller
e8b141b593 Add support for floating-point fused multiply-add on Sparc.
* configure.ac: Add feature check to make sure the assembler
	supports the FMAF, HPC, and VIS 3.0 instructions found on
	Niagara-3 and later cpus.
	* configure: Rebuild.
	* config.in: Likewise.
	* config/sparc/sparc.opt: New option '-mfmaf'.
	* config/sparc/sparc.md: Add float fused multiply-add patterns.
	* config/sparc/sparc.h (AS_NIAGARA3_FLAG): New macro.
	(ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC): Use it, as needed.
	* config/sparc/sol2.h (ASM_CPU32_DEFAULT_SPEC,
	ASM_CPU64_DEFAULT_SPEC, ASM_CPU_SPEC): Likewise.
	* config/sparc/sparc.c (sparc_option_override): Turn MASK_FMAF on
	by default for Niagara-3 and later.  Turn it off if TARGET_FPU is
	disabled.
	(sparc_rtx_costs): Handle 'FMA'.
	* doc/invoke.texi: Document -mfmaf.

From-SVN: r179174
2011-09-25 14:28:51 -07:00
David S. Miller
7cbcf85bf9 Generate 'fone' and 'fones' sparc instructions when possible.
* config/sparc/constraints.md (C, P, Z): New constraints for
	const_doube, const_int, and const_vector "all ones" values.
	Make unused constraint letters comment match reality.
	* config/sparc/predicates.md (const_all_ones_operand,
	register_or_zero_or_all_ones_operand): New predicates.
	* config/sparc/sparc.c (sparc_expand_move): Allow all ones
	as well as zero constants when VIS.
	(sparc_legitimate_constant_p): Likewise.
	* config/sparc/sparc.md (movsi_insn): Add fones alternative.
	(movsf_insn): Likewise
	(movdi_insn_sp64): Add fone alternative.
	(movdf_insn_sp32_v9): Likewise.
	(movdf_insn_sp64): Likewise.

From-SVN: r179173
2011-09-25 14:03:53 -07:00
Paolo Carlini
a0ce4616fb revert: testsuite_error.h: Add empty default constructor to __gnu_test::test_category and...
2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>

	Revert (no longer necessary post r179130):

	2010-04-27  Fabien Chêne  <fabien.chene@gmail.com>

	* testsuite/util/testsuite_error.h: Add empty default constructor
	to __gnu_test::test_category and
	__gnu_test::test_derived_category.
	* src/future.cc: Add empty default constructor to
	future_error_category.
	* src/system_error.cc: Add default ctor to generic_error_category
	and system_error_category.

From-SVN: r179172
2011-09-25 20:58:46 +00:00
Eric Botcazou
ad1d36bafd ada-tree.h (TREE_THIS_NOTRAP): Redefine.
* gcc-interface/ada-tree.h (TREE_THIS_NOTRAP): Redefine.
	* gcc-interface/trans.c (Identifier_to_gnu): Factor out common code in
	the by-ref case.  Do not set TREE_READONLY on a renamed object.  Set
	TREE_THIS_NOTRAP on UNCONSTRAINED_ARRAY_REF nodes.
	(Attribute_to_gnu) <Attr_Length>: Expand the use of the parameter cache
	to the indirect case.
	* gcc-interface/utils.c (convert) <UNCONSTRAINED_ARRAY_REF>: Preserve
	the TREE_THIS_NOTRAP flag.

From-SVN: r179171
2011-09-25 20:40:10 +00:00
Eric Botcazou
6162cec0d9 trans.c (Loop_Statement_to_gnu): In the case of an iteration scheme...
* gcc-interface/trans.c (Loop_Statement_to_gnu): In the case of an
	iteration scheme, always generate the do-while form if optimization
	is enabled.  Use more straightforward test at the end.

From-SVN: r179169
2011-09-25 20:27:37 +00:00
Eric Botcazou
dee12fcd11 decl.c (gnat_to_gnu_entity): Use XNEW instead of xmalloc.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Subtype>: Use
	XNEW instead of xmalloc.  Do not build useless pointer type.
	<E_Anonymous_Access_Subprogram_Type>: Use XNEW instead of xmalloc.
	* gcc-interface/trans.c (gnat_to_gnu) <N_Raise_Constraint_Error>: Tidy.
	* gcc-interface/utils2.c (build_unary_op): Remove local variable.

From-SVN: r179168
2011-09-25 20:15:10 +00:00
Eric Botcazou
dea976c480 decl.c (gnat_to_gnu_entity): Do not promote the alignment if this doesn't prevent BLKmode access to the object.
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not promote
	the alignment if this doesn't prevent BLKmode access to the object.

From-SVN: r179167
2011-09-25 15:42:00 +00:00
Jakub Jelinek
960dcaf528 tree-ssa-structalias.c (intra_create_variable_infos): Treat TYPE_RESTRICT REFERENCE_TYPE parameters like restricted DECL_BY_REFERENCE...
* tree-ssa-structalias.c (intra_create_variable_infos): Treat
	TYPE_RESTRICT REFERENCE_TYPE parameters like restricted
	DECL_BY_REFERENCE parameters.

	* g++.dg/tree-ssa/restrict2.C: New test.

From-SVN: r179166
2011-09-25 17:03:56 +02:00
Eric Botcazou
1ee0d66040 tree-eh.c (cleanup_empty_eh): Allow a call to __builtin_stack_restore if there is no outgoing edge.
* tree-eh.c (cleanup_empty_eh): Allow a call to __builtin_stack_restore
	if there is no outgoing edge.

	* tree-scalar-evolution.c (simple_iv): Accept all kinds of pointer and
	integral types.

From-SVN: r179165
2011-09-25 14:55:12 +00:00
Ira Rosen
8e19f5a1b3 tree-vect-slp.c (vect_slp_analyze_bb_1): Split out core part of vect_analyze_bb here.
* tree-vect-slp.c (vect_slp_analyze_bb_1): Split out core part
        of vect_analyze_bb here.
        (vect_analyze_bb): Loop over vector sizes calling
        vect_analyze_bb_1.

From-SVN: r179164
2011-09-25 12:33:03 +00:00
Paolo Carlini
13ec1ccaaa re PR c++/50280 (Incorrect type deduced for T& when passed a const bitfield)
2011-09-25  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/50280
	* g++.dg/template/bitfield1.C: New.

From-SVN: r179163
2011-09-25 10:43:00 +00:00
Ira Rosen
4e4452b65b tree-data-ref.c (dr_analyze_innermost): Add new argument.
* tree-data-ref.c (dr_analyze_innermost): Add new argument.
        Allow not simple iv if analyzing basic block.
        (create_data_ref): Update call to dr_analyze_innermost.
        (stmt_with_adjacent_zero_store_dr_p, ref_base_address):
        Likewise.
        * tree-loop-distribution.c (generate_memset_zero): Likewise.
        * tree-predcom.c (find_looparound_phi): Likewise.
        * tree-data-ref.h (dr_analyze_innermost): Add new argument.

From-SVN: r179161
2011-09-25 09:21:42 +00:00
David S. Miller
10b859c0d8 Teach sparc backend about %gsr register and add intrinsics to access it.
* config/sparc/sparc.h (FIRST_PSEUDO_REGISTER): Bump to 103.
	(SPARC_GSR_REG): Define.
	(FIXED_REGISTERS): Mark GSR as fixed.
	(CALL_USED_REGISTERS): Mark GSR as call used.
	(HARD_REGNO_NREGS): GSR is always 1 register.
	(REG_CLASS_CONTENTS): Add GSR to ALL_REGS.
	(REG_ALLOC_ORDER, REG_LEAF_ALLOC_ORDER): Add GSR to the end.
	(REGISTER_NAMES): Add "%gsr".
	* config/sparc/sparc.md (UNSPEC_ALIGNADDR, UNSPEC_ALIGNADDRL):
	Delete.
	(UNSPEC_WRGSR): New unspec.
	(GSR_REG): New constant.
	(type): Add new insn type 'gsr'.
	(fpack16_vis, fpackfix_vis, fpack32_vis,
	faligndata<V64I:MODE>_vis)): Add use of GSR_REG.
	(wrgsr_vis, *wrgsr_sp64, wrgsr_v8plus, rdgsr_vis, *rdgsr_sp64,
	rdgsr_v8plus): New expanders and insns.
	(alignaddr<P:mode>_vis, alignaddrl<P:mode>_vis): Reimplement
	using patterns which show that this is a plus in addition to a
	modification of GSR_REG, instead of an unspec.
	* config/sparc/ultra1_2.md: Handle 'gsr'.
	* config/sparc/ultra3.md: Likewise.
	* config/sparc/niagara.md: Likewise.
	* config/sparc/niagara2.md: Likewise.
	* config/sparc/sparc.c (leaf_reg_remap, sparc_leaf_regs): Fill out
	end of table.
	(sparc_option_override): Make -mvis imply -mv8plus.
	(hard_32bit_mode_classes, hard_64bit_mode_classes): Add entries
	for %gsr.
	(sparc_vis_init_builtins): Build __builtin_vis_write_gsr and
	__builtin_vis_read_gsr.
	(sparc_expand_buildin): Handle builtins that take one argument and
	return void.
	(sparc_fold_builtin): Never fold writes to %gsr.
	* config/sparc/visintrin.h (__vis_write_gsr, __vis_read_gsr): New.
	* doc/extend.texi: Document new VIS intrinsics.

From-SVN: r179159
2011-09-24 19:29:23 -07:00
Jason Merrill
6eaade31bb except.c (expr_noexcept_p): Split out from finish_noexcept_expr.
* except.c (expr_noexcept_p): Split out from finish_noexcept_expr.
	* cp-tree.h: Declare it.
	* method.c (walk_field_subobs): Use it.

From-SVN: r179158
2011-09-24 22:26:21 -04:00
Jason Merrill
6fd4488141 init.c (perform_member_init): Instantiate NSDMI here.
* init.c (perform_member_init): Instantiate NSDMI here.
	* pt.c (tsubst_decl) [FIELD_DECL]: Not here.

From-SVN: r179157
2011-09-24 22:26:08 -04:00
Jason Merrill
eb02633818 Handle deferred parsing of NSDMIs.
* parser.h (cp_unparsed_functions_entry): Add nsdmis field.
	* parser.c (unparsed_nsdmis, cp_parser_save_nsdmi): New.
	(cp_parser_late_parse_one_default_arg): Split out from
	cp_parser_late_parsing_default_args.
	(cp_parser_late_parsing_nsdmi): New.
	(push_unparsed_function_queues): Set it.
	(cp_parser_parameter_declaration): Save the '=' token.
	(cp_parser_template_parameter): Likewise.
	(cp_parser_default_argument): Call cp_parser_initializer
	rather than cp_parser_initializer_clause.
	(cp_parser_class_specifier_1): Parse unparsed_nsdmis.
	(cp_parser_member_declaration): Handle nsdmis.
	* decl2.c (grokfield): Handle DEFAULT_ARG for a function.

From-SVN: r179156
2011-09-24 22:26:01 -04:00
Jason Merrill
0e5f8a598d Implement C++11 non-static data member initializers.
* cp-tree.h (enum cpp_warn_str): Add CPP0X_NSDMI.
	* error.c (maybe_warn_cpp0x): Handle it.
	* call.c (convert_like_real) [ck_user]: Don't complain about
	using an explicit constructor for direct-initialization.
	* class.c (check_field_decl): Fix ancient typo.
	(check_field_decls): NSDMIs make the default ctor non-trivial.
	* decl.c (cp_finish_decl): Record NSDMI.
	(grokdeclarator): Allow NSDMI.
	* decl2.c (grokfield): Allow NSDMI.  Correct LOOKUP flags.
	* init.c (perform_member_init): Use NSDMI.
	* method.c (walk_field_subobs): Check for NSDMI.
	* parser.c (cp_parser_member_declaration): Parse { } init.
	* semantics.c (register_constexpr_fundef): Don't talk about
	a return statement in a constexpr constructor.
	(cxx_eval_call_expression): Check DECL_INITIAL instead of
	DECL_SAVED_TREE.

From-SVN: r179155
2011-09-24 22:25:52 -04:00
GCC Administrator
77236534b9 Daily bump.
From-SVN: r179154
2011-09-25 00:18:46 +00:00
John Salmon
82582df651 re PR libstdc++/50510 ([C++0x] transposed variable names in std::seed_seq::generate)
2011-09-24  John Salmon  <john.salmon@deshaw.com>

	PR libstdc++/50510
	* include/bits/random.tcc (seed_seq::generate): Fix computation.

From-SVN: r179149
2011-09-24 22:34:50 +00:00
Iain Sandoe
655ae828ee ada, remove flat_namespace library option from darwin port build/defaults :
* gcc-interface/Makefile.in (darwin): Do not issue the
	'-flat_namespace' linker flag during Ada build.
	* mlib-tgt-specific-darwin.adb: Remove '-flat_namespace' flag from the
	default shared library options.

From-SVN: r179148
2011-09-24 20:25:42 +00:00
Basile Starynkevitch
ae0d176cbc trivial libiberty/ChangeLog update
From-SVN: r179147
2011-09-24 19:56:10 +00:00
Jason Merrill
fc3b4dc34a correct ChangeLog
From-SVN: r179146
2011-09-24 15:05:36 -04:00
John Salmon
9d1f3ce6ff re PR libstdc++/50509 ([C++0x] incorrect code in std::seed_seq::generate)
2011-09-24  John Salmon  <john.salmon@deshaw.com>

	PR libstdc++/50509
	* include/bits/random.tcc (seed_seq::generate): Fix computation.

From-SVN: r179144
2011-09-24 18:28:36 +00:00
Paolo Carlini
a271590a43 re PR c++/44267 (SFINAE does not handle down static_cast over virtual inheritance)
/cp
2011-09-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/44267
	* class.c (build_base_path): Add a tsubst_flags_t parameter.
	(convert_to_base): Adjust call.
	* typeck.c (build_class_member_access_expr,
	get_member_function_from_ptrfunc, build_static_cast_1): Likewise.
	* init.c (dfs_initialize_vtbl_ptrs, emit_mem_initializers): Likewise.
	* method.c (do_build_copy_constructor, do_build_copy_assign): Likewise.
	* rtti.c (build_dynamic_cast_1): Likewise.
	* typeck2.c (build_scoped_ref, build_m_component_ref): Likewise.
	* call.c (build_over_call, build_special_member_call): Likewise.
	* cvt.c (cp_convert_to_pointer, convert_to_pointer_force,
	build_up_reference): Likewise.
	* cp-tree.h (build_base_path): Adjust declaration.

/testsuite
2011-09-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/44267
	* g++.dg/template/sfinae28.C: New.

From-SVN: r179141
2011-09-24 09:55:01 +00:00
GCC Administrator
ee02baae96 Daily bump.
From-SVN: r179138
2011-09-24 00:19:10 +00:00
Ian Lance Taylor
6ed22bc817 go-test.exp (errchk): Handle more cases of getting correct Tcl backslash quoting in regular...
* go.test/go-test.exp (errchk): Handle more cases of getting
	correct Tcl backslash quoting in regular expressions in test file.

Also fix some tests to match gccgo error messages.

From-SVN: r179134
2011-09-23 23:44:14 +00:00
Ian Lance Taylor
b07000d942 Better parsing of erroneous expression on left of :=.
Better parsing of erroneous non-type in type switch.

From-SVN: r179133
2011-09-23 22:23:19 +00:00
Cary Coutant
2d2b02c4da re PR c++/40831 (g++ generated symbols for cloned function that be demangled.)
include/ChangeLog:

	PR 40831
	* demangle.h (enum demangle_component_type): Add
	DEMANGLE_COMPONENT_CLONE.

libiberty/ChangeLog:

	PR 40831
	* cp-demangle.c (d_make_comp): Add new component type.
	(cplus_demangle_mangled_name): Check for clone suffixes.
	(d_parmlist): Don't error out if we see '.'.
	(d_clone_suffix): New function.
	(d_print_comp): Print info for clone suffixes.
	* testsuite/demangle-expected: Add new testcases.

From-SVN: r179132
2011-09-23 14:39:10 -07:00
Jason Merrill
d220e00d6b correct ChangeLog
From-SVN: r179131
2011-09-23 17:38:26 -04:00