Commit Graph

137799 Commits

Author SHA1 Message Date
Jonathan Wakely
b4f504de77 iterator (ostream_joiner): Simplify by using the injected-class-name and the ostream_type typedef.
* include/experimental/iterator (ostream_joiner): Simplify by using
	the injected-class-name and the ostream_type typedef.

From-SVN: r222728
2015-05-02 19:03:20 +01:00
Jonathan Wakely
a623b6f011 iterator: New.
* include/experimental/iterator: New. Define ostream_joiner.
	* include/Makefile.am: Add new header.
	* include/Makefile.in: Regenerate.
	* testsuite/experimental/iterator/make_ostream_joiner.cc: New.
	* testsuite/experimental/iterator/ostream_joiner.cc: New.
	* testsuite/experimental/iterator/requirements.cc: New.
	* doc/xml/manual/status_cxx2017.xml: Update status.
	* doc/html/manual/status.html: Regenerate.

From-SVN: r222727
2015-05-02 18:14:25 +01:00
Steven G. Kargl
3435c26f32 re PR fortran/65976 (gfortran man-page lists the -fno-fixed-form flag but does not define it, and it doesn't work)
2015-05-02  Steven G. Kargl  <kargl@gcc.gnu.org>

	PR fortran/65976
	* invoke.texi:  Remove 'no-' in '-fno-fixed-form'

From-SVN: r222725
2015-05-02 16:37:35 +00:00
Jonathan Wakely
6c0b8a537c numeric: New.
* include/experimental/numeric: New. Define gcd and lcm.
	* include/Makefile.am: Add new header.
	* include/Makefile.in: Regenerate.
	* testsuite/experimental/numeric/gcd.cc: New.
	* testsuite/experimental/numeric/lcm.cc: New.
	* doc/xml/manual/status_cxx2017.xml: Update status.
	* doc/html/manual/status.html: Regenerate.

From-SVN: r222724
2015-05-02 16:18:36 +01:00
Edward Smith-Rowland
fe4b6acbff Revert addition of feature macros from other headers per latest SD-6.
2015-05-02  Edward Smith-Rowland  <3dw4rd@verizon.net>

        Revert addition of feature macros from other headers per latest SD-6.
        * include/experimental/deque: Remove feature-test macro.
        * include/experimental/forward_list: Ditto.
        * include/experimental/list: Ditto.
        * include/experimental/map: Ditto.
        * include/experimental/set: Ditto.
        * include/experimental/string: Ditto.
        * include/experimental/unordered_map: Ditto.
        * include/experimental/unordered_set: Ditto.

From-SVN: r222722
2015-05-02 12:48:32 +00:00
Jonathan Wakely
9407c6fa53 any (any::_Storage): Make non-copyable.
* include/experimental/any (any::_Storage): Make non-copyable.
	(any::any): Do not copy _Storage object.
	(any::operator=): Implement more efficiently than swapping.
	(any::swap): Use new _Op_xfer operation.
	(any::_Op::_Op_xfer): New enumerator.
	(_Manager_internal::_S_alloc): Remove unused function.
	(_Manager_internal::_S_create, _Manager_external::_S_create): Use out
	parameter instead of returning a _Storage object.
	(_Manager_internal::_S_manage, _Manager_external::_S_manage): Add
	_Op_xfer operation for moving and swapping.
	* testsuite/experimental/any/cons/nontrivial.cc: New.
	* testsuite/experimental/any/misc/any_cast_neg.cc: Adjust dg-error.

From-SVN: r222721
2015-05-02 13:38:44 +01:00
Jonathan Wakely
5b244a78dc fs_path.h (filesystem_error::~filesystem_error): Declare.
* include/experimental/fs_path.h (filesystem_error::~filesystem_error):
	Declare.
	* src/filesystem/path.cc (filesystem_error::~filesystem_error):
	Define.

From-SVN: r222720
2015-05-02 12:36:55 +01:00
Jonathan Wakely
cb2ef49e83 re PR libstdc++/65978 (missing constexpr on std::forward_as_tuple and std::tie (LWG issues 2275 and 2301))
PR libstdc++/65978
	* include/std/tuple (forward_as_tuple, tie): Add constexpr.
	* testsuite/20_util/tuple/creation_functions/constexpr.cc: Uncomment
	and fix tests for forward_as_tuple and tie.

From-SVN: r222719
2015-05-02 12:20:03 +01:00
Jonathan Wakely
58f270df25 ops.cc (last_write_time): Set timespec members explicitly instead of with a braced-init-list.
* src/filesystem/ops.cc (last_write_time) [_GLIBCXX_USE_UTIMENSAT]:
	Set timespec members explicitly instead of with a braced-init-list.
	[_GLIBCXX_HAVE_UTIME_H]: Use lambda to handle st_atime being a macro.

From-SVN: r222718
2015-05-02 10:51:49 +01:00
Trevor Saunders
4afeb6fcf5 update ChangeLogs for previous commit
From-SVN: r222716
2015-05-02 04:27:29 +00:00
Trevor Saunders
539280a8e8 fixup libobjc usage of PCC_BITFIELD_TYPE_MATTERS
libobjc/ChangeLog:

2015-05-01  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* acinclude.m4: Include bitfields.m4.
	* config.h.in: Regenerate.
	* configure: Likewise.
	* configure.ac: Invoke gt_BITFIELD_TYPE_MATTERS.
	* encoding.c: Check HAVE_BITFIELD_TYPE_MATTERS.

config/ChangeLog:

2015-05-01  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>

	* bitfields.m4: New file.

From-SVN: r222715
2015-05-02 04:11:07 +00:00
Sandra Loosemore
90eb63a3a0 extend.texi (Variable Attributes): Add menu and proper @nodes to subsections.
2015-05-01  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/extend.texi (Variable Attributes): Add menu and proper
	@nodes to subsections.  Move Microsoft Windows attributes to
	their own subsection.
	(Type Attributes): Reorganize introduction to remove duplicate
	list of attributes.  Add menu and proper @nodes to subsections.
	Alphabetize the main table of common attributes.

From-SVN: r222714
2015-05-01 23:30:37 -04:00
Edward Smith-Rowland
9c0717ed3f deque: Add feature-test macro.
2015-05-02  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* include/experimental/deque: Add feature-test macro.
	* include/experimental/forward_list: Ditto.
	* include/experimental/list: Ditto.
	* include/experimental/map: Ditto.
	* include/experimental/set: Ditto.
	* include/experimental/string: Ditto.
	* include/experimental/unordered_map: Ditto.
	* include/experimental/unordered_set: Ditto.

From-SVN: r222713
2015-05-02 02:01:35 +00:00
GCC Administrator
0a09a3beb1 Daily bump.
From-SVN: r222712
2015-05-02 00:16:15 +00:00
Jonathan Wakely
b275f0cbe5 * include/experimental/memory: Correct feature-test macro.
From-SVN: r222708
2015-05-01 22:26:24 +01:00
Jonathan Wakely
64b07900f1 memory: Add feature-test macro.
* include/experimental/memory: Add feature-test macro.
	* include/experimental/vector: Likewise.
	* doc/xml/manual/status_cxx2017.xml: Update status.
	* doc/html/manual/status.html: Regenerate.

From-SVN: r222707
2015-05-01 22:01:17 +01:00
Ville Voutilainen
261b7e8af2 Implement observer_ptr.
2015-05-01  Ville Voutilainen  <ville.voutilainen@gmail.com>

	Implement observer_ptr.
	* include/Makefile.am: Add new header.
	* include/Makefile.in: Regenerate.
	* include/experimental/memory: New.
	* testsuite/experimental/memory/observer_ptr/assignment/assign.cc: New.
	* testsuite/experimental/memory/observer_ptr/cons/cons.cc: New.
	* testsuite/experimental/memory/observer_ptr/hash/hash.cc: New.
	* testsuite/experimental/memory/observer_ptr/make_observer.cc: New.
	* testsuite/experimental/memory/observer_ptr/relops/relops.cc: New.
	* testsuite/experimental/memory/observer_ptr/requirements.cc: New.
	* testsuite/experimental/memory/observer_ptr/swap/swap.cc: New.
	* testsuite/experimental/memory/observer_ptr/typedefs.cc: New.

From-SVN: r222706
2015-05-01 22:01:11 +01:00
Jonathan Wakely
4ad376273d * src/filesystem/path.cc (path::compare): Do not copy strings.
From-SVN: r222704
2015-05-01 21:05:42 +01:00
Jonathan Wakely
bf53e6a9dd acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable when <dirent.h> is not available.
* acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable when <dirent.h>
	is not available.
	(GLIBCXX_CHECK_FILESYSTEM_DEPS): Check for fchmodat.
	* configure: Regenerate.
	* config.h.in: Regenerate.
	* configure.ac: Check for utime.h
	* include/experimental/fs_path.h (path::string<>)
	[_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Remove stray typename keyword.
	* src/filesystem/dir.cc [!_GLIBCXX_HAVE_DIRENT_H] (DIR, opendir,
	closedir, dirent, readdir_r): Replace dummy functions with #error.
	(native_readdir, _Dir::advance): Use readdir when readdir_r is missing.
	* src/filesystem/ops.cc (do_stat, is_set): Make inline.
	(last_write_time) [!_GLIBCXX_USE_UTIMENSAT]: Use utime.
	(permissions) [!_GLIBCXX_USE_FCHMODAT]: Use chmod.
	(space, temp_directory_path) [_GLIBCXX_FILESYSTEM_IS_WINDOWS]: Set
	error_code.

From-SVN: r222703
2015-05-01 20:48:00 +01:00
Jonathan Wakely
a00d74c490 fs_path.h (path::_List): Use vector instead of list.
* include/experimental/fs_path.h (path::_List): Use vector instead of
	list.
	* python/libstdcxx/v6/printers.py (StdExpPathPrinter): Adapt.
	* src/filesystem/path.cc: Use std::prev instead of decrementing
	rvalues. Fix whitespace.
	* testsuite/experimental/filesystem/path/decompose/parent_path.cc:
	Do not decrement iterators before begin.

From-SVN: r222702
2015-05-01 20:47:55 +01:00
Paolo Carlini
d532ea9181 Wnarrowing4.C: Rename to Wnarrowing3.C.
2015-05-01  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/Wnarrowing4.C: Rename to Wnarrowing3.C.

Co-Authored-By: Prathamesh Kulharni <prathamesh.kulkarni@linaro.org>

From-SVN: r222701
2015-05-01 18:53:51 +00:00
Paolo Carlini
38920aec4c re PR c++/65858 (ICE in varpool_node::get_constructor during chromium build on arm-linux-gnueabihf with LTO during LINK chrome)
/cp
2015-05-01  Paolo Carlini  <paolo.carlini@oracle.com>
	    Prathamesh Kulharni  <prathamesh.kulkarni@linaro.org>

	PR c++/65858
	* typeck2.c (check_narrowing): Set ok = true when pedwarn returns
	false.

/testsuite
2015-05-01  Paolo Carlini  <paolo.carlini@oracle.com>
	    Prathamesh Kulharni  <prathamesh.kulkarni@linaro.org>

	PR c++/65858
	* g++.dg/cpp0x/Wnarrowing4.C: New.

Co-Authored-By: Prathamesh Kulharni <prathamesh.kulkarni@linaro.org>

From-SVN: r222699
2015-05-01 18:43:40 +00:00
Rasmus Villemoes
0f770b013e match.pd: New simplification patterns.
* match.pd: New simplification patterns.
	(x + (x & 1))  -> ((x + 1) & ~1)
	(x & ~(x & y)) -> ((x & ~y))
	(x | ~(x | y)) -> ((x | ~y))

	* gcc.dg/20150120-1.c: New test.
	* gcc.dg/20150120-2.c: New test.
	* gcc.dg/20150120-3.c: New test.

From-SVN: r222697
2015-05-01 12:25:12 -06:00
David Edelsohn
5524eb7ecc * gcc.dg/debug/pr65771.c: Add "dg-add-options tls".
From-SVN: r222696
2015-05-01 14:23:30 -04:00
Jonathan Wakely
d6e023f3a0 fs_dir.h: Fix use of non-reserved names.
* include/experimental/fs_dir.h: Fix use of non-reserved names.
	* include/experimental/fs_ops.h: Likewise.
	* include/experimental/fs_path.h: Likewise.
	* testsuite/lib/libstdc++.exp (check_v3_target_filesystem_ts): Use
	C++11 when checking for support.

From-SVN: r222695
2015-05-01 18:55:33 +01:00
Jonathan Wakely
e9cd006414 locale_classes.h (locale::facet): Delete copy operations in C++11 mode.
* include/bits/locale_classes.h (locale::facet): Delete copy
	operations in C++11 mode.

From-SVN: r222694
2015-05-01 17:50:31 +01:00
Joseph Myers
04df569c86 * sv.po: Update.
From-SVN: r222692
2015-05-01 17:23:49 +01:00
Joseph Myers
99374690ee * de.po: Update.
From-SVN: r222690
2015-05-01 17:19:00 +01:00
Kyrylo Tkachov
15ab4e1e79 [doc] Update definition location of attribute_spec in documentation
* target.def (attribute_table): Mention that struct attribute_spec
	is defined in tree-core.h rather than tree.h
	* doc/tm.texi: Regenerate.

From-SVN: r222688
2015-05-01 15:35:15 +00:00
Renlin Li
f40694b312 [PATCH] add sync_int_long target selector to gcc.dg/pr65345-2.c
gcc/testsuite/

2015-05-01  Renlin Li  <renlin.li@arm.com>

	* gcc.dg/pr65345-2.c: Add sync_int_long target selector.

From-SVN: r222687
2015-05-01 15:28:22 +00:00
Jonathan Wakely
ff0164b48b * include/bits/alloc_traits.h (__alloc_rebind): Change parameter name.
From-SVN: r222686
2015-05-01 16:22:49 +01:00
Jonathan Wakely
ce1b114a9c acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable for solaris.
* acinclude.m4 (GLIBCXX_ENABLE_FILESYSTEM_TS): Disable for solaris.
	* configure: Regenerate.

From-SVN: r222685
2015-05-01 16:11:05 +01:00
Edward Smith-Rowland
ea365e01ef Inline one-line erasure dispatch functions.
2015-05-01  Edward Smith-Rowland  <3dw4rd@verizon.net>

	Inline one-line erasure dispatch functions.
	* include/experimental/forward_list (erase_if(), erase()): Inline.
	* include/experimental/list (erase_if(), erase()): Inline.
	* include/experimental/map (erase_if(*)): Inline.
	* include/experimental/set (erase_if(*)): Inline.
	* include/experimental/string (erase_if(), erase()): Inline.
	* include/experimental/unordered_map (erase_if(*)): Inline.
	* include/experimental/unordered_set (erase_if(*)): Inline.

From-SVN: r222684
2015-05-01 15:00:46 +00:00
Richard Sandiford
fdae509271 genrecog.c (test): Rename to rtx_test.
gcc/
	* genrecog.c (test): Rename to rtx_test.  Update rest of file
	accordingly.

From-SVN: r222683
2015-05-01 14:26:55 +00:00
Andreas Schwab
ab528787ff Summary: Mark help string in DEFPARAM as no-c-format
PR translation/65959
* params.h (DEFPARAM): Rename msgid to nocmsgid.

From-SVN: r222682
2015-05-01 14:07:51 +00:00
Mikael Morin
11642de8a8 Allow bound simplification of array subreferences.
gcc/fortran/
	* simplify.c (simplify_bound_dim): Tighten the check for array fullness
	by also checking for absence of subreference.
	(simplify_bound): Don't skip simplification if the array
	has subreferences.
	(simplify_cobound): Same.
gcc/testsuite/
	* gfortran.dg/bound_simplification_4.f90: New.

From-SVN: r222681
2015-05-01 13:32:42 +00:00
Wilco Dijkstra
50093a330f [AArch64] Make aarch64_min_divisions_for_recip_mul configurable
On behalf of Wilco Dijkstra

2015-05-01  Wilco Dijkstra  <wdijkstr@arm.com>

	* gcc/config/aarch64/aarch64-protos.h (tune_params):
	Add min_div_recip_mul_sf and min_div_recip_mul_df fields.
	* gcc/config/aarch64/aarch64.c (aarch64_min_divisions_for_recip_mul):
	Return value depending on target.
	(generic_tunings): Initialize new target settings.
	(cortexa53_tunings): Likewise.
	(cortexa57_tunings): Likewise.
	(thunderx_tunings): Likewise.
	(xgene1_tunings): Likewise.

From-SVN: r222679
2015-05-01 13:19:34 +00:00
Wilco Dijkstra
e8b9138291 [AArch64] Fix Cortex-A53 shift costs
On behalf of Wilco Dijkstra

2015-05-01  Wilco Dijkstra  <wdijkstr@arm.com>

	* gcc/config/arm/aarch-cost-tables.h (cortexa53_extra_costs):
	Make Cortex-A53 shift costs more accurate.

From-SVN: r222678
2015-05-01 13:09:25 +00:00
Kyrylo Tkachov
5e2a765bee [AArch64] Handle FLOAT and UNSIGNED_FLOAT in rtx costs
* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle FLOAT and
	UNSIGNED_FLOAT.

From-SVN: r222677
2015-05-01 12:54:22 +00:00
Wilco Dijkstra
23cb661888 [AArch64] Fix aarch64_rtx_costs of PLUS/MINUS
On behalf of Wilco Dijkstra

2015-05-01  Wilco Dijkstra  <wdijkstr@arm.com>

	* gcc/config/aarch64/aarch64.c (aarch64_rtx_costs):
	Calculate cost of op0 and op1 in PLUS and MINUS cases.

From-SVN: r222676
2015-05-01 12:52:34 +00:00
Jonathan Wakely
1d15ed75ab intro.xml: Link to new status_cxx2017.xml file.
* doc/xml/manual/intro.xml: Link to new status_cxx2017.xml file.
	* doc/xml/manual/status_cxx2011.xml: Update status tables.
	* doc/xml/manual/status_cxx2014.xml: Likewise.
	* doc/xml/manual/status_cxx2017.xml: New.
	* doc/xml/manual/using.xml: Fix typo.
	* doc/html/*: Regenerate.

From-SVN: r222675
2015-05-01 12:02:24 +01:00
Jonathan Wakely
6fc456c36b memory (pointer_safety, [...]): Define.
* include/std/memory (pointer_safety, declare_reachable,
	undeclare_reachable, declare_no_pointers, undeclare_no_pointers,
	get_pointer_safety): Define.
	* testsuite/20_util/pointer_safety/1.cc: New.

From-SVN: r222674
2015-05-01 12:02:18 +01:00
Kyrylo Tkachov
ad88bedb89 [AArch64] Remember to cost operand 0 in FP compare-with-0.0 case
* config/aarch64/aarch64.c (aarch64_rtx_costs, COMPARE case):
	Add cost of op0 in the compare-with-fpzero case.

From-SVN: r222673
2015-05-01 08:58:34 +00:00
GCC Administrator
6358f1b436 Daily bump.
From-SVN: r222669
2015-05-01 00:16:15 +00:00
Bill Schmidt
edc8824fe3 crypto-builtin-2.c: Replace powerpc_vsx_ok with powerpc_p8vector_ok.
2015-04-30  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* gcc.target/powerpc/crypto-builtin-2.c: Replace powerpc_vsx_ok
	with powerpc_p8vector_ok.

From-SVN: r222664
2015-04-30 23:59:16 +00:00
Thomas Koenig
0ba691a097 re PR fortran/37131 (inline matmul for small matrix sizes)
2015-04-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/37131
	* simplify.c (simplify_bound): Get constant lower bounds of one
	from array spec for assumed and explicit shape shape arrays if
	the lower bounds are indeed one.

2015-04-30  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/37131
	* gfortran.dg/coarray_lib_this_image_2.f90:  Adjust
	scan pattern.
	* gfortran.dg/bound_9.f90:  New test case.

From-SVN: r222661
2015-04-30 22:12:31 +00:00
David Malcolm
6f3d1a5e66 Fix spurious semicolons
gcc/ChangeLog:
	* builtins.c (fold_builtin_1): Remove spurious second
	semicolon.
	* cgraph.h (symtab_node::get_availability): Likewise.
	* opts.c (common_handle_option): Remove spurious second semicolon.
	* tree-ssa-loop-ivopts.c (extract_cond_operands): Likewise.
	* tree-ssa-loop-niter.c (derive_constant_upper_bound_ops): Likewise.

gcc/cp/ChangeLog:
	* cp-tree.h (ARGUMENT_PACK_SELECT_ARG): Remove spurious
	trailing semicolon.

gcc/fortran/ChangeLog:
	* options.c (gfc_init_options): Remove spurious second
	semicolon.
	* trans-stmt.c (gfc_trans_allocate): Likewise.

From-SVN: r222658
2015-04-30 21:07:45 +00:00
Chris Manghane
4f576c83fb compiler: Use backend interface for stack allocation.
Stack allocation was being done by making a temporary variable and
taking its address.  This does not work when allocating in a loop
because every allocated variable will refer to the same address.
The backend now provides a way to safely allocate in a loop.

	* go-gcc.cc (Gcc_backend::stack_allocation_expression): New
	method.

From-SVN: r222657
2015-04-30 20:44:03 +00:00
Uros Bizjak
6d158d9a6b devirt-28a.C: Require LTO effective target.
* g++.dg/ipa/devirt-28a.C: Require LTO effective target.
	* g++.dg/ext/sync-4.C (dg-additional-options): Use -march=pentium
	for 32bit x86 targets.
	* gcc.dg/pr36504.c (dg-additional-options): Use -march=i686 -msse
	for 32bit x86 targets.
	* gcc.dg/pr39455.c (dg-additional-options): Ditto.
	* gcc.dg/pr45352-1.c (dg-additional-options): Ditto.
	* gcc.dg/pr63914.c (dg-additional-options): Use -msse
	for 32bit x86 targets.

From-SVN: r222656
2015-04-30 22:22:51 +02:00
Caroline Tice
81ccb75226 tm.texi: Regenerate.
* doc/tm.texi: Regenerate.

From-SVN: r222655
2015-04-30 21:35:34 +02:00