Commit Graph

147319 Commits

Author SHA1 Message Date
Jason Merrill 4d031550cc PR c++/71117 - core 2189 and generic lambda
* call.c (add_template_conv_candidate): Disable if there are
	viable candidates.

From-SVN: r238394
2016-07-15 14:49:25 -04:00
Jason Merrill 2a54351ba7 PR c++/71511 - ICE on decltype scope in declaration.
* typeck2.c (cxx_incomplete_type_diagnostic): Handle DECLTYPE_TYPE.

From-SVN: r238393
2016-07-15 14:38:48 -04:00
Jason Merrill 1019d19180 PR c++/71513 - alignas on member enum in template
* pt.c (tsubst_attributes): Fix loop logic.

From-SVN: r238392
2016-07-15 14:38:40 -04:00
Jason Merrill 37a92c0ca2 PR c++/71604 - type definition in range-based for
PR c++/54430
	* parser.c (cp_parser_range_for): Modify IDENTIFIER_BINDING directly.
	(cp_parser_simple_declaration): Diagnose type definition in
	for-range-declaration.

From-SVN: r238391
2016-07-15 14:38:31 -04:00
Jason Merrill aa30dfadf3 PR c++/71711 - mangle C++1z fold-expressions.
* operators.def: Add *_FOLD_EXPR.
	* cp-tree.h (FOLD_EXPR_P): Parenthesize.
	* mangle.c (write_expression): Handle fold-expressions.
	* pt.c (tsubst_unary_left_fold, tsubst_binary_left_fold)
	(tsubst_unary_right_fold, tsubst_binary_right_fold): Handle
	partial instantiation.

From-SVN: r238390
2016-07-15 14:38:23 -04:00
Jason Merrill 34bbc4c502 PR c++/71814 - mangling sizeof... (sP and sZ)
gcc/cp/
	* mangle.c (write_expression): Handle sizeof... an argument pack.
libiberty/
	* cp-demangle.c (cplus_demangle_operators): Add sP and sZ.
	(d_print_comp_inner): Handle them.
	(d_template_args_1): Split out from d_template_args.
	(d_args_length): New.

From-SVN: r238389
2016-07-15 14:38:15 -04:00
Jason Merrill d022c55a4b Update -fabi-version default to 11.
* c-opts.c (c_common_post_options): Update -fabi-version default to 11.

From-SVN: r238388
2016-07-15 14:38:05 -04:00
Jason Merrill 9ee2cecc2f PR c++/71718 - infinite recursion and alias template
* pt.c (push_tinst_level_loc): Set at_eof before fatal_error.

From-SVN: r238387
2016-07-15 14:37:56 -04:00
Jason Merrill d1dfa20d80 PR c++/70824 - initializer_list in template
* init.c (constant_value_1): Don't instantiated DECL_INITIAL of
	artificial variables.

From-SVN: r238386
2016-07-15 14:37:48 -04:00
Edward Smith-Rowland 4db1cb44be Implement C++17 P0025 clamp.
2016-07-15  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement C++17 P0025 clamp.
	* include/bits/algorithmfwd.h: Declare clamp overloads.
	* include/bits/stl_algo.h: Implement clamp.  Feature __cpp_lib_clamp.
	* testsuite/25_algorithms/clamp/1.cc: New test.
	* testsuite/25_algorithms/clamp/2.cc: New test.
	* testsuite/25_algorithms/clamp/constexpr.cc: New test.
	* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
	1.cc: New test.
	* testsuite/25_algorithms/clamp/requirements/explicit_instantiation/
	pod.cc: New test.

From-SVN: r238383
2016-07-15 17:16:32 +00:00
Georg-Johann Lay 4a1248da39 Typo.
From-SVN: r238382
2016-07-15 16:28:17 +00:00
Georg-Johann Lay be88b0c781 predicates.md (const_m255_to_m1_operand): New.
* config/avr/predicates.md (const_m255_to_m1_operand): New.
	* config/avr/constraints.md (Cn8, Ca1, Co1, Yx2): New constraints.
	* config/avr/avr.md (add<mode>3) <ALL1>: Make "r,0,r" more
	expensive.
	(*cmphi.zero-extend.0, *cmphi.zero-extend.1)
	(*usum_widenqihi3, *udiff_widenqihi3)
	(*addhi3_zero_extend.const): New combiner insns.
	(andqi3, iorqi3): Provide "l" (NO_LD_REGS) alternative if
	just 1 bit is affected.
	* config/avr/avr.c (avr_out_bitop) <QImode>: Don't access xop[3].
	(avr_out_compare) [EQ,NE]: Tweak comparing d-regs against -1.

From-SVN: r238381
2016-07-15 16:25:38 +00:00
Jakub Jelinek 5eed9a887b Fix up ChangeLog entry.
From-SVN: r238378
2016-07-15 17:28:26 +02:00
Bin Cheng 41c7438e90 scev-8.c: Update test string.
gcc/testsuite
	* gcc.dg/tree-ssa/scev-8.c: Update test string.

From-SVN: r238377
2016-07-15 14:21:55 +00:00
Cesar Philippidis b1c9c068f7 c-parser.c (c_parser_oacc_declare): Don't scan for GOMP_MAP_POINTER.
gcc/c/
	* c-parser.c (c_parser_oacc_declare): Don't scan for
	GOMP_MAP_POINTER.
	* c-typeck.c (handle_omp_array_sections): Mark data clauses with
	GOMP_MAP_FORCE_{PRESENT,TO,FROM,TOFROM} as potentially having
	zero-length subarrays.

	gcc/cp/
	* parser.c (cp_parser_oacc_declare): Don't scan for
	GOMP_MAP_POINTER.
	* semantics.c (handle_omp_array_sections): Mark data clauses with
	GOMP_MAP_FORCE_{PRESENT,TO,FROM,TOFROM} as potentially having
	zero-length subarrays.

	gcc/
	* omp-low.c (lower_omp_target): Mark data clauses with
	GOMP_MAP_FORCE_{PRESENT,TO,FROM,TOFROM} as potentially having
	zero-length subarrays.

	libgomp/
	* testsuite/libgomp.oacc-c-c++-common/zero_length_subarrays.c: New
	test.

From-SVN: r238376
2016-07-15 07:13:48 -07:00
Cesar Philippidis f7ba880b6b openmp.c (gfc_match_omp_clauses): Scan for clause vector_length before vector.
gcc/fortran/
	* openmp.c (gfc_match_omp_clauses): Scan for clause vector_length
	before vector.

	gcc/testsuite/
	* gfortran.dg/goacc/vector_length.f90: New test.

From-SVN: r238375
2016-07-15 07:03:35 -07:00
Richard Biener b9aba0a058 re PR tree-optimization/71881 (ICE on valid code at -O3 with -g enabled on x86_64-linux-gnu: cannot update SSA form)
2016-07-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/71881
	* tree-loop-distribution.c (destroy_loop): Remove blocks in
	reverse DOM order to make debug temp generation happy.

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

From-SVN: r238374
2016-07-15 13:05:56 +00:00
Richard Biener 9513d5fbca re PR tree-optimization/71887 (wrong code (SIGFPE) at -O1 and above on x86_64-linux-gnu (in both 32-bit and 64-bit modes))
2016-07-15  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/71887
	* tree-ssa-phiopt.c (absorbing_element_p): Add rhs arg and
	verify it is not zero for division / modulo handling.
	(value_replacement): Adjust.

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

From-SVN: r238373
2016-07-15 12:56:17 +00:00
Virendra Pathak ad611a4c84 [PATCH/AARCH64] Add rtx_costs routine for vulcan.
gcc/ChangeLog:

2016-07-15  Virendra Pathak  <virendra.pathak@broadcom.com>
	    Julian Brown  <julian@codesourcery.com>

	* config/aarch64/aarch64-cores.def: Update vulcan COSTS.
	* config/aarch64/aarch64-cost-tables.h
	(vulcan_extra_costs): New variable.
	* config/aarch64/aarch64.c
	(vulcan_addrcost_table): Likewise.
	(vulcan_regmove_cost): Likewise.
	(vulcan_vector_cost): Likewise.
	(vulcan_branch_cost): Likewise.
	(vulcan_tunings): Likewise.


Co-Authored-By: Julian Brown <julian@codesourcery.com>

From-SVN: r238372
2016-07-15 11:17:53 +00:00
Alexander Monakov 3ef4678208 handle undefined extern vars in output_in_order
* cgraphunit.c (cgraph_order_sort_kind): New entry ORDER_VAR_UNDEF.
(output_in_order): Loop over undefined variables too.  Output them
via assemble_undefined_decl.  Skip variables that correspond to hard
registers or have value-exprs.
* varpool.c (symbol_table::output_variables): Handle undefined
variables together with defined ones.

From-SVN: r238371
2016-07-15 14:01:23 +03:00
Richard Biener a8e15f9074 tree-ssa-pre.c (get_representative_for): Make sure to return the value number of SSA names.
2016-07-15  Richard Biener  <rguenther@suse.de>

	* tree-ssa-pre.c (get_representative_for): Make sure to return
	the value number of SSA names.
	(phi_translate_1): get_representative_for cannot return NULL.
	(do_pre_regular_insertion): Remove redundant call to
	fully_constant_expression.
	(do_pre_partial_partial_insertion): Likewise.

From-SVN: r238370
2016-07-15 10:53:29 +00:00
Jakub Jelinek ddbbcb1981 re PR c/71858 (Surprising suggestions for misspellings)
PR c/71858
	* c-common.h (enum lookup_name_fuzzy_kind): Add
	FUZZY_LOOKUP_FUNCTION_NAME.

	* c-decl.c (implicit_decl_warning): Use FUZZY_LOOKUP_FUNCTION_NAME
	instead of FUZZY_LOOKUP_NAME.
	(lookup_name_fuzzy): For FUZZY_LOOKUP_FUNCTION_NAME consider
	FUNCTION_DECLs, {VAR,PARM}_DECLs function pointers and macros.

	* gcc.dg/spellcheck-identifiers-3.c: New test.

From-SVN: r238369
2016-07-15 12:40:39 +02:00
Andre Vehreschild 29eb509ccb re PR fortran/71807 (Internal compiler error with NULL() reference in structure constructor)
gcc/fortran/ChangeLog:

2016-07-15  Andre Vehreschild  <vehre@gcc.gnu.org>

	PR fortran/71807
	* trans-expr.c (gfc_trans_subcomponent_assign): Special casing
	when allocatable component is set to null() in initializer.

gcc/testsuite/ChangeLog:

2016-07-15  Andre Vehreschild  <vehre@gcc.gnu.org>

	PR fortran/71807
	* gfortran.dg/null_9.f90: New test.

From-SVN: r238368
2016-07-15 11:28:47 +02:00
Bin Cheng 43aabfcfd4 tree-scalar-evolution.c (simple_iv_with_niters): New funcion.
* tree-scalar-evolution.c (simple_iv_with_niters): New funcion.
	(derive_simple_iv_with_niters): New function.
	(simple_iv): Rewrite using simple_iv_with_niters.
	* tree-scalar-evolution.h (simple_iv_with_niters): New decl.
	* tree-ssa-loop-niter.c (number_of_iterations_exit_assumptions): New
	function.
	(number_of_iterations_exit): Rewrite using above function.
	* tree-ssa-loop-niter.h (number_of_iterations_exit_assumptions): New
	Decl.

	gcc/testsuite
	* gcc.dg/tree-ssa/loop-41.c: New test.

From-SVN: r238367
2016-07-15 09:04:57 +00:00
Bin Cheng afc89e5849 re PR tree-optimization/71347 (Performance drop after r235513 on x86-64 in 32-bit mode.)
gcc/testsuite
	PR tree-optimization/71347
	* gcc.dg/tree-ssa/pr71347.c: XFAIL on ia64, arm, m68k and sparc.

From-SVN: r238366
2016-07-15 08:53:48 +00:00
Ville Voutilainen 1ec0f76305 Fix the constraints for any's assignment operator template to properly
reject assignment from a non-copyable lvalue.

From-SVN: r238365
2016-07-15 10:44:22 +03:00
Richard Biener 8d4fc2d3d0 i386.c (ix86_builtin_vectorization_cost): Adjust vec_construct cost.
2016-07-15  Richard Biener  <rguenther@suse.de>

	* config/i386/i386.c (ix86_builtin_vectorization_cost): Adjust
	vec_construct cost.

From-SVN: r238364
2016-07-15 07:38:01 +00:00
GCC Administrator ea142e833d Daily bump.
From-SVN: r238362
2016-07-15 00:16:19 +00:00
Steven G. Kargl 6fa682ad31 re PR fortran/29819 (Error/warning message should ignore comments for "1" in %C output)
2016-07-14  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/29819
	* parse.c (parse_contained): Use proper locus.
 

2016-07-14  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/29819
	* gfortran.dg/bind_c_usage_9.f03: Move dg-error.
	* gfortran.dg/contains.f90: Ditto.
	* gfortran.dg/contains_empty_1.f03: Ditto.
	* gfortran.dg/submodule_3.f08: Ditto.

From-SVN: r238354
2016-07-14 20:54:40 +00:00
Jakub Jelinek a60a5d31dd re PR testsuite/71865 (test case gcc.dg/diagnostic-token-ranges.c fails starting with r237714)
PR testsuite/71865
	* gcc.dg/diagnostic-token-ranges.c: Add -std=c11 to dg-options.
	(wide_string_literal_in_asm): Use __asm instead of asm, adjust
	expected diagnostics.

From-SVN: r238353
2016-07-14 20:42:53 +02:00
Jakub Jelinek dd36b8775f re PR c/71858 (Surprising suggestions for misspellings)
PR c/71858
	* c-decl.c (lookup_name_fuzzy): Ignore binding->invisible.

	* gcc.dg/spellcheck-identifiers.c (snprintf): Declare.
	* gcc.dg/spellcheck-identifiers-2.c: New test.
	* gcc.dg/diagnostic-token-ranges.c (nanl): Declare.
	* c-c++-common/attributes-1.c: Adjust dg-prune-output.

From-SVN: r238352
2016-07-14 20:34:00 +02:00
Jakub Jelinek a241f8ca21 re PR tree-optimization/71872 (ICE in inchash::add_expr, at tree.c:7782 - OEP_ADDRESS_OF asserted for ADDR_EXPR applied to constant)
PR tree-optimization/71872
	* tree-data-ref.c (get_references_in_stmt): Ignore references
	with is_gimple_constant get_base_address.

	* gcc.c-torture/compile/pr71872.c: New test.

From-SVN: r238351
2016-07-14 20:30:38 +02:00
Thomas Preud'homme d62b809c11 arm.h (TARGET_HAVE_LDACQ): Enable for ARMv8-M Mainline.
2016-07-14  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    * config/arm/arm.h (TARGET_HAVE_LDACQ): Enable for ARMv8-M Mainline.
    (TARGET_HAVE_LDACQD): New macro.
    * config/arm/sync.md (atomic_loaddi): Use TARGET_HAVE_LDACQD rather
    than TARGET_HAVE_LDACQ.
    (arm_load_acquire_exclusivedi): Likewise.
    (arm_store_release_exclusivedi): Likewise.

    libgcc/
    * gcc.target/arm/atomic-comp-swap-release-acquire.c: Rename into ...
    * gcc.target/arm/atomic-comp-swap-release-acquire-1.c: This.
    * gcc.target/arm/atomic-op-acq_rel.c: Rename into ...
    * gcc.target/arm/atomic-op-acq_rel-1.c: This.
    * gcc.target/arm/atomic-op-acquire.c: Rename into ...
    * gcc.target/arm/atomic-op-acquire-1.c: This.
    * gcc.target/arm/atomic-op-char.c: Rename into ...
    * gcc.target/arm/atomic-op-char-1.c: This.
    * gcc.target/arm/atomic-op-consume.c: Rename into ...
    * gcc.target/arm/atomic-op-consume-1.c: This.
    * gcc.target/arm/atomic-op-int.c: Rename into ...
    * gcc.target/arm/atomic-op-int-1.c: This.
    * gcc.target/arm/atomic-op-relaxed.c: Rename into ...
    * gcc.target/arm/atomic-op-relaxed-1.c: This.
    * gcc.target/arm/atomic-op-release.c: Rename into ...
    * gcc.target/arm/atomic-op-release-1.c: This.
    * gcc.target/arm/atomic-op-seq_cst.c: Rename into ...
    * gcc.target/arm/atomic-op-seq_cst-1.c: This.
    * gcc.target/arm/atomic-op-short.c: Rename into ...
    * gcc.target/arm/atomic-op-short-1.c: This.
    * gcc.target/arm/atomic-comp-swap-release-acquire-2.c: New test.
    * gcc.target/arm/atomic-op-acq_rel-2.c: Likewise.
    * gcc.target/arm/atomic-op-acquire-2.c: Likewise.
    * gcc.target/arm/atomic-op-char-2.c: Likewise.
    * gcc.target/arm/atomic-op-consume-2.c: Likewise.
    * gcc.target/arm/atomic-op-int-2.c: Likewise.
    * gcc.target/arm/atomic-op-relaxed-2.c: Likewise.
    * gcc.target/arm/atomic-op-release-2.c: Likewise.
    * gcc.target/arm/atomic-op-seq_cst-2.c: Likewise.
    * gcc.target/arm/atomic-op-short-2.c: Likewise.

From-SVN: r238348
2016-07-14 17:21:21 +00:00
Andre Vehreschild 1f8dd420eb re PR fortran/70842 (internal compiler error with character members within a polymorphic pointer)
gcc/testsuite/ChangeLog:

2016-07-14  Andre Vehreschild  <vehre@gcc.gnu.org>

	PR fortran/70842
	* gfortran.dg/select_type_35.f03: New test.

gcc/fortran/ChangeLog:

2016-07-14  Andre Vehreschild  <vehre@gcc.gnu.org>

	PR fortran/70842
	* simplify.c (gfc_simplify_len): Only for unlimited polymorphic
	types replace the expression's _data ref with a _len ref.

From-SVN: r238347
2016-07-14 19:07:47 +02:00
Thomas Preud'homme aefae0f13c re PR rtl-optimization/71878 (ICE in cselib_record_set)
2016-07-14  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/
    PR rtl-optimization/71878
    * lra-constraints.c (match_reload): Pass information about other
    output operands.  Create new unique register value if matching input
    operand shares same register value as output operand being considered.
    (curr_insn_transform): Record output operands already processed.

From-SVN: r238346
2016-07-14 16:41:06 +00:00
Jonathan Wakely ea5ec6b7e0 Include header for std::__parallel::search
* include/experimental/functional: Include <parallel/algorithm> in
	Parallel Mode.

From-SVN: r238342
2016-07-14 16:43:17 +01:00
Jonathan Wakely 47d5cb3c3b Add header for std::search to testcase
* testsuite/experimental/functional/searchers.cc: Include <algorithm>
	for std::search.

From-SVN: r238341
2016-07-14 16:27:09 +01:00
Kyrylo Tkachov 53109ba8a7 [vectorizer][2/2] Hook up mult synthesis logic into vectorisation of mult-by-constant
PR target/65951
	PR tree-optimization/70923
	* tree-vect-patterns.c: Include mult-synthesis.h.
	(target_supports_mult_synth_alg): New function.
	(synth_lshift_by_additions): Likewise.
	(apply_binop_and_append_stmt): Likewise.
	(vect_synth_mult_by_constant): Likewise.
	(target_has_vecop_for_code): Likewise.
	(vect_recog_mult_pattern): Use above functions to synthesize vector
	multiplication by integer constants.

	* gcc.dg/vect/vect-mult-const-pattern-1.c: New test.
	* gcc.dg/vect/vect-mult-const-pattern-2.c: Likewise.
	* gcc.dg/vect/pr65951.c: Likewise.
	* gcc.dg/vect/vect-iv-9.c: Remove ! vect_int_mult-specific scan.

From-SVN: r238340
2016-07-14 14:32:39 +00:00
Alan Modra 0c15a902d1 [RS6000] Disparage altivec_mov gpr alternatives
and fix constraint '*' placement.

	* gcc/config/rs6000/altivec.md (altivec_mov<mode>): Disparage
	gpr alternatives.  Correct '*' placement on Y,r alternative.
	Add '*' on operand 1 of r,r alternative.

From-SVN: r238339
2016-07-14 23:55:47 +09:30
Kyrylo Tkachov ec573d17b8 [1/2] Move choose_mult_variant declaration and dependent declarations to expmed.h
* expmed.c (mult_variant, choose_mult_variant): Move declaration to...
	* expmed.h: ... Here.

From-SVN: r238337
2016-07-14 13:57:05 +00:00
Jan Hubicka 21bcd7bedd gimple.h (stmt_can_terminate_bb_p): New function.
* gimple.h (stmt_can_terminate_bb_p): New function.
	* tree-cfg.c (need_fake_edge_p): Rename to ...
	(stmt_can_terminate_bb_p): ... this; return true if stmt can
	throw external; handle const and pure calls.
	* tree-ssa-loop-niter.c (loop_only_exit_p): Use it.

From-SVN: r238336
2016-07-14 13:52:21 +00:00
David Edelsohn 91f35b7f97 pr60226.c: Expect maximum object file alignment error on AIX.
* c-c++-common/pr60226.c: Expect maximum object	file alignment
        error on AIX.

From-SVN: r238335
2016-07-14 09:07:23 -04:00
Richard Biener 351168fe55 re PR tree-optimization/71866 (gcc locks up after fix for PR70159)
2016-07-14  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/71866
	* tree-ssa-pre.c (get_constant_for_value_id): Remove.
	(do_hoist_insertion): Avoid endless recursion when we
	didn't insert anything because we managed to simplify
	things down to a constant or SSA name.
	(fully_constant_expression): Re-write in terms of ...
	* tree-ssa-sccvn.h (vn_nary_simplify): ... this.  Declare.
	* tree-ssa-sccvn.c (vn_nary_simplify): New wrapper around
	vn_nary_build_or_lookup_1.
	(vn_nary_build_or_lookup_1): Added flag and renamed from ...
	(vn_nary_build_or_lookup): ... this which now wraps it.

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

From-SVN: r238334
2016-07-14 12:15:38 +00:00
Eric Botcazou 8234d02aa4 decl.c (gnat_to_gnu_entity): Also use the void pointer type if the designated type is incomplete and has no...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Access_Type>: Also use
	the void pointer type if the designated type is incomplete and has no
	full view in LTO mode.
	<E_Access_Protected_Subprogram_Type>: Adjust comment.
	<E_Incomplete_Type>: Likewise.
	* gcc-interface/trans.c (Call_to_gnu): Do not convert to the type of
	the actual if it is a dummy type.

From-SVN: r238333
2016-07-14 11:12:22 +00:00
Jonathan Wakely 0a2bf18874 Improve doxygen comments for allocators in containers
PR libstdc++/70716
	* include/bits/forward_list.h (forward_list): Update doxygen comments
	to reflect allocator propagation semantics. Remove ambiguous
	statements about data being lost.
	* include/bits/stl_deque.h (deque): Likewise.
	* include/bits/stl_list.h (list): Likewise.
	* include/bits/stl_map.h (map): Likewise.
	* include/bits/stl_multimap.h (multimap): Likewise.
	* include/bits/stl_multiset.h (multiset): Likewise.
	* include/bits/stl_set.h (set): Likewise.
	* include/bits/stl_vector.h (vector): Likewise.
	* include/bits/unordered_map.h (unordered_map, unordered_multimap):
	Likewise.
	* include/bits/unordered_set.h (unordered_set, unordered_multiset):
	Likewise.

From-SVN: r238332
2016-07-14 11:02:10 +01:00
Thomas Preud'homme 94c32c00f1 pr42574.c: Add missing target keyword for the dg-do selector and enclose boolean...
2016-07-14  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    gcc/testsuite/
    * gcc.target/arm/pr42574.c: Add missing target keyword for the dg-do
    selector and enclose boolean expression in curly braces.

From-SVN: r238331
2016-07-14 09:20:48 +00:00
Rainer Orth 29f09b388d Added forgotten PR testsuite/71489 reference.
From-SVN: r238330
2016-07-14 09:10:24 +00:00
Ville Voutilainen 25a69162c9 Implement P0032R3, Homogeneous interface for variant, any and optional,
for the parts concerning any and optional.
	* include/std/any (_Storage()): Make constexpr and have it
	initialize _M_ptr.
	(any()): Make constexpr.
	(any(const any&)): Adjust.
	(any(any&&)): Likewise.
	(__any_constructible_t): New.
	(any(_ValueType&&)): Constrain.
	(any(in_place_type_t<_Tp>, _Args&&...)): New.
	(any(in_place_type_t<_Tp>, initializer_list<_Up>, _Args&&...)):
	Likewise.
	(~any()): Adjust.
	(operator=(const any&)): Likewise.
	(operator=(any&&)): Likewise.
	(operator=(_ValueType&&)): Constrain.
	(emplace(_Args&&...)): New.
	(emplace(initializer_list<_Up>, _Args&&...)): Likewise.
	(clear()): Remove.
	(reset()): New.
	(swap(any&)): Adjust.
	(empty()): Remove.
	(has_value()): New.
	(type()): Adjust.
	(_Manager_internal::_S_create(_Storage&, _Args&&...)): New.
	(_Manager_external::_S_create(_Storage&, _Args&&...)): Likewise.
	(make_any(_Args&&...)): Likewise.
	(make_any(initializer_list<_Up>, _Args&&...)): Likewise.
	* include/std/optional (in_place_t, in_place): Remove.
	(bad_optional_access): Add a comment referring to LEWG 72.
	(emplace(_Args&&...)): Constrain.
	(has_value()): New.
	(reset()): Likewise.
	(make_optional(_Args&&...)): Likewise.
	(make_optional(initializer_list<_Up>, _Args&&...)): Likewise.
	* include/std/utility (in_place_tag): New.
	(__in_place, __in_place_type, __in_place_index): Likewise.
	(in_place_t, in_place_type_t, in_place_index_t): Likewise.
	(in_place(__in_place*)): Likewise.
	(in_place(__in_place_type<_Tp>*)): Likewise.
	(in_place(__in_place_index<_Idx>*)): Likewise.
	* testsuite/20_util/any/assign/1.cc: Adjust.
	* testsuite/20_util/any/assign/emplace.cc: New.
	* testsuite/20_util/any/assign/self.cc: Adjust.
	* testsuite/20_util/any/cons/1.cc: Likewise.
	* testsuite/20_util/any/cons/in_place.cc: New.
	* testsuite/20_util/any/make_any.cc: Likewise.
	* testsuite/20_util/any/misc/any_cast_neg.cc: Adjust.
	* testsuite/20_util/any/misc/swap.cc: Likewise.
	* testsuite/20_util/any/modifiers/1.cc: Likewise.
	* testsuite/20_util/any/requirements.cc: New.
	* testsuite/20_util/in_place/requirements.cc: Likewise.
	* testsuite/20_util/optional/constexpr/in_place.cc: Adjust.
	* testsuite/20_util/optional/in_place.cc: Likewise.
	* testsuite/20_util/optional/make_optional.cc: Add tests for
	the new overloads of make_optional.

From-SVN: r238329
2016-07-14 12:10:05 +03:00
Ville Voutilainen c0d31471ba Fix ChangeLog.
From-SVN: r238328
2016-07-14 12:09:50 +03:00
Alan Modra b799a4819a [RS6000] -mno-vsx should force -mno-power9-dform
PR target/71733
gcc/
	* config/rs6000/rs6000.c (rs6000_option_override_internal): Deal
	with p9_vector override before power9-dform override.
gcc/testsuite/
	* gcc.target/powerpc/p9-novsx.c: New.

From-SVN: r238326
2016-07-14 13:56:36 +09:30