2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement SD-6: SG10 Feature Test Recommendations
	* internal.h (lexer_state, spec_nodes): Add in__has_include__.
	* directives.c: Support __has_include__ builtin.
	* expr.c (parse_has_include): New function to parse __has_include__
	builtin; (eval_token()): Use it.
	* files.c (_cpp_has_header()): New funtion to look for header;
	(open_file_failed()): Not an error to not find a header file for
	__has_include__.
	* identifiers.c (_cpp_init_hashtable()): Add entry for __has_include__.
	* pch.c (cpp_read_state): Lookup __has_include__.
	* traditional.c (enum ls, _cpp_scan_out_logical_line()): Walk through
	__has_include__ statements.

2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement SD-6: SG10 Feature Test Recommendations
	* c-cppbuiltin.c (c_cpp_builtins()): Define language feature
	macros and the __has_header macro.

2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement SD-6: SG10 Feature Test Recommendations
	* include/bits/basic_string.h: Add __cpp_lib feature test macro.
	* include/bits/stl_algobase.h: Ditto.
	* include/bits/stl_function.h: Ditto.
	* include/bits/unique_ptr.h: Ditto.
	* include/std/chrono: Ditto.
	* include/std/complex: Ditto.
	* include/std/iomanip: Ditto.
	* include/std/shared_mutex: Ditto.
	* include/std/tuple: Ditto.
	* include/std/type_traits: Ditto.
	* include/std/utility: Ditto.
	* testsuite/experimental/feat-cxx14.cc: New.
	* testsuite/experimental/feat-lib-fund.cc: New.
	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
	* testsuite/20_util/duration/literals/range.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Adjust.
	* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Adjust.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.
	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust.
	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
	Adjust.

2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Implement SD-6: SG10 Feature Test Recommendations
	* g++.dg/cpp1y/feat-cxx11-neg.C: New.
	* g++.dg/cpp1y/feat-cxx11.C: New.
	* g++.dg/cpp1y/feat-cxx14.C: New.
	* g++.dg/cpp1y/feat-cxx98.C: New.
	* g++.dg/cpp1y/feat-cxx98-neg.C: New.
	* g++.dg/cpp1y/phoobhar.h: New.
	* g++.dg/cpp1y/testinc/phoobhar.h: New.




git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215752 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* include/std/type_traits: Add is_final<> type trait for C++14.
	* testsuite/util/testsuite_tr1.h: Add 
	* testsuite/20_util/is_final/requirements/
	explicit_instantiation.cc: New.
	* testsuite/20_util/is_final/requirements/typedefs.cc: New.
	* testsuite/20_util/is_final/value.cc: New.
	* testsuite/20_util/declval/requirements/1_neg.cc: Adjust.
	* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Adjust.
	* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Adjust.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215753 138bc75d-0d04-0410-961f-82ee72b054a4
testsuite: error out with tested condition instead of FOO

Use the (abbreviated) proprocessor condition for #error instead of FOO
so one can see the test issued.

2012-12-01  Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

    * lib/target-supports.exp: error out with preprocessor condition
    instead of FOO everywhere.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215759 138bc75d-0d04-0410-961f-82ee72b054a4
[PATCH][ARM] Disable store_minmaxsi pattern for arm_restrict_i

	* config/arm/arm.md (*store_minmaxsi): Disable for arm_restrict_it.



git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215760 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/63362
	* class.c (type_has_non_user_provided_default_constructor): Rename
	from type_has_user_provided_default_constructor, reverse sense.
	(default_init_uninitialized_part, explain_non_literal_class): Adjust.
	(check_bases_and_members): Set TYPE_HAS_COMPLEX_DFLT.
	* call.c (build_new_method_call_1): Adjust.
	* cp-tree.h: Adjust.
	* decl.c (grok_special_member_properties): Don't set
	TYPE_HAS_COMPLEX_DFLT.
	* init.c (build_value_init_noctor): Don't use
	type_has_user_provided_default_constructor.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215771 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/63362
	* method.c (constructible_expr): Handle value-init of non-class.
	* parser.c (cp_parser_trait_expr): Allow pack expansion.
	* pt.c (tsubst_copy_and_build): Handle pack expansion.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215772 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-01  François Dumont  <fdumont@gcc.gnu.org>

	* python/libstdcxx/v6/printers.py (StdDebugIteratorPrinter.to_string):
	Adapt to latest modifications on debug iterators.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215775 138bc75d-0d04-0410-961f-82ee72b054a4
	PR target/63428
	* config/i386/i386.c (expand_vec_perm_pshufb): Fix up rperm[0]
	argument to avx2_permv2ti.

	* gcc.dg/torture/vshuf-4.inc: Move test 122 from EXPTESTS
	to test 24 in TESTS.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215776 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/i386/i386.c (expand_vec_perm_vperm2f128): Canonicalize
	dfirst permutation.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215777 138bc75d-0d04-0410-961f-82ee72b054a4
	* config/i386/i386.c (expand_vec_perm_palignr): Handle
	256-bit vectors for TARGET_AVX2.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215778 138bc75d-0d04-0410-961f-82ee72b054a4
	PR c++/63306
	* g++.dg/ipa/pr63306.C: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215779 138bc75d-0d04-0410-961f-82ee72b054a4
	PR debug/63342
	* dwarf2out.c (loc_list_from_tree): Handle MEM_REF with non-zero
	offset, TARGET_MEM_REF and SSA_NAME.

	* gcc.dg/pr63342.c: New test.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215782 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-02  Bernd Edlinger  <bernd.edlinger@hotmail.de>
            Jeff Law  <law@redhat.com>

        * charset.c (convert_no_conversion): Reallocate memory with 25%
        headroom.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215785 138bc75d-0d04-0410-961f-82ee72b054a4
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215788 138bc75d-0d04-0410-961f-82ee72b054a4
2014-10-01  Segher Boessenkool  <segher@kernel.crashing.org>

gcc/
	PR rtl-optimization/62151
	* combine.c (can_combine_p): Allow the destination register of INSN
	to be clobbered in I3.
	(subst): Do not substitute into clobbers of registers.

gcc/testsuite/
	* gcc.dg/combine-clobber.c: New.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215789 138bc75d-0d04-0410-961f-82ee72b054a4
	* ipa-polymorphic-call.c
	(ipa_polymorphic_call_context::restrict_to_inner_class):
	Rename EXPECTED_TYPE to OTR_TYPE; Validate speculation late;
	use speculation_consistent_p to do so; Add CONSDER_BASES
	and CONSIDER_PLACEMENT_NEW parameters.
	(contains_type_p): Add CONSDER_PLACEMENT_NEW and CONSIDER_BASES;
	short circuit obvious cases.
	(ipa_polymorphic_call_context::dump): Improve formatting.
	(ipa_polymorphic_call_context::ipa_polymorphic_call_context): Use
	combine_speculation_with to record speculations; Do not ICE when
	object is located in pointer type decl; do not ICE for methods
	of UNION_TYPE; do not record nonpolymorphic types.
	(ipa_polymorphic_call_context::speculation_consistent_p): New method.
	(ipa_polymorphic_call_context::combine_speculation_with): New method.
	(ipa_polymorphic_call_context::combine_with): New method.
	(ipa_polymorphic_call_context::make_speculative): Move here; use
	combine speculation.
	* cgraph.h (ipa_polymorphic_call_context): Update
	restrict_to_inner_class prototype; add offset_by, make_speculative, 
	combine_with, useless_p, combine_speculation_with and
	speculation_consistent_p methods.
	(ipa_polymorphic_call_context::offset_by): New method.
	(ipa_polymorphic_call_context::useless_p): New method.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215790 138bc75d-0d04-0410-961f-82ee72b054a4