Commit Graph

7630 Commits

Author SHA1 Message Date
Edward Smith-Rowland f0e1e86d22 Fix a paste-o in ext/random.tcc - declared an Adapted urng that was not used ot needed.
From-SVN: r191371
2012-09-17 03:46:40 +00:00
Paolo Carlini d9d69f64b1 random (rice_distribution<>::operator==): Change inline friend definition to non-template.
2012-09-16  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/ext/random (rice_distribution<>::operator==): Change
	inline friend definition to non-template.
	* testsuite/ext/random/rice_distribution/requirements/
	explicit_instantiation/1.cc: New.

	* testsuite/26_numerics/random/normal_mv_distribution: Move...
	* testsuite/ext/random/normal_mv_distribution: ... here.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine:
	Move...
	* testsuite/ext/random/simd_fast_mersenne_twister_engine: ... here.
	* testsuite/26_numerics/random/beta_distribution: Move...
	* testsuite/ext/random/beta_distribution: ... here.
	* testsuite/26_numerics/random/rice_distribution: Move...
	* testsuite/ext/random/rice_distribution: ... here.

From-SVN: r191367
2012-09-16 22:28:21 +00:00
Edward Smith-Rowland 283126182e Add the rice distribution as an extension.
From-SVN: r191362
2012-09-16 17:36:56 +00:00
David Edelsohn f783a79952 * configure: Regenerated.
From-SVN: r191330
2012-09-14 19:41:36 -04:00
Paolo Carlini 02cbc6d6a7 2012-09-14 Paolo Carlini <paolo.carlini@oracle.com>
* Tweak last ChangeLog entry.

From-SVN: r191296
2012-09-14 12:23:12 +00:00
Jonathan Wakely 645708abf6 Check _GLIBCXX_USE_C99_STDINT_TR1 in random.cc
PR libstdc++/54576
	* libstdc++-v3/src/c++11/random.cc: Check if
	_GLIBCXX_USE_C99_STDINT_TR1 is defined.

Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>

From-SVN: r191294
2012-09-14 04:41:53 -07:00
Rainer Orth 9520425b6b Clear hardware capabilities on libstdc++.so with Sun as
* acinclude.m4 (GLIBCXX_CHECK_ASSEMBLER_HWCAP): Define.
	* configure.ac: Call GLIBCXX_CHECK_ASSEMBLER_HWCAP.
	* fragment.am (CONFIG_CXXFLAGS): Add $(HWCAP_FLAGS).
	* configure: Regenerate.
	* Makefile.in: Regenerate.
	* doc/Makefile.in: Regenerate.
	* include/Makefile.in: Regenerate.
	* libsupc++/Makefile.in: Regenerate.
	* po/Makefile.in: Regenerate.
	* python/Makefile.in: Regenerate.
	* src/Makefile.in: Regenerate.
	* src/c++11/Makefile.in: Regenerate.
	* src/c++98/Makefile.in: Regenerate.
	* testsuite/Makefile.in: Regenerate.

From-SVN: r191218
2012-09-12 12:38:15 +00:00
Jakub Jelinek 635442bfd8 re PR libstdc++/54172 (__cxa_guard_acquire thread-safety issue)
PR libstdc++/54172
	* libsupc++/guard.cc (__cxa_guard_acquire): Fix up the last
	argument of the first __atomic_compare_exchange_n.

From-SVN: r191190
2012-09-11 17:22:54 +02:00
Sebastian Huber 5a86d36fcc re PR libstdc++/43852 (Embedded systems friendly libstdc++)
2012-09-10  Sebastian Huber  <sebastian.huber@embedded-brains.de>
	    Jonathan Wakely  <jwakely.gcc@gmail.com>

	PR libstdc++/43852
	* acinclude.m4 (GLIBCXX_ENABLE_VERBOSE): Define.
	* configure.ac (GLIBCXX_ENABLE_VERBOSE): Use it.
	* config.h.in: Regenerate.
	* configure: Likewise.
	* libsupc++/eh_term_handler.cc (_GLIBCXX_VERBOSE): Check new macro.
	* libsupc++/pure.cc (_GLIBCXX_VERBOSE): Likewise.
	* doc/xml/manual/configure.xml (--disable-libstdcxx-verbose): Document.
	* doc/html/manual/configure.html: Regenerate.

Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>

From-SVN: r191121
2012-09-10 00:08:48 +01:00
Jonathan Wakely bc7e468e79 re PR bootstrap/54419 (Compiling libstdc++-v3/src/c++11/random.cc fails on platforms not knowing rdrand)
PR bootstrap/54419
	* acinclude.m4 (GLIBCXX_CHECK_X86_RDRAND): Remove stray character.
	* configure: Regenerated.

From-SVN: r191119
2012-09-09 20:46:41 +01:00
Jonathan Wakely a2e948ab51 Fix ChangeLog date.
From-SVN: r191115
2012-09-09 19:02:25 +01:00
Jonathan Wakely 885e812159 re PR libstdc++/54388 (std::array.at() const results in undefined behaviour)
PR libstdc++/54388
	* include/std/array (array::at() const): Ensure lvalue result.
	* testsuite/23_containers/array/element_access/54388.cc: New.
	* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
	dg-error line numbers.
	* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
	Likewise.

From-SVN: r191114
2012-09-09 18:56:51 +01:00
Ulrich Drepper 3ca6351daa re PR bootstrap/54419 (Compiling libstdc++-v3/src/c++11/random.cc fails on platforms not knowing rdrand)
2012-09-09  Ulrich Drepper  <drepper@gmail.com>
	    Dominique d'Humieres  <dominiq@lps.ens.fr>
	    Jack Howarth  <howarth@bromo.med.uc.edu>

	PR bootstrap/54419
	* acinclude.m4: Define GLIBCXX_CHECK_X86_RDRAND.
	* configure.ac: Use GLIBCXX_CHECK_X86_RDRAND to test for rdrand
	support in assembler.
	* src/c++11/random.cc (__x86_rdrand): Depend on _GLIBCXX_X86_RDRAND.
	(random_device::_M_init): Likewise.
	(random_device::_M_getval): Likewise.
	* configure: Regenerated.
	* config.h.in: Regenerated.

Co-Authored-By: Dominique d'Humieres <dominiq@lps.ens.fr>
Co-Authored-By: Jack Howarth <howarth@bromo.med.uc.edu>

From-SVN: r191111
2012-09-09 18:20:42 +01:00
Ulrich Drepper ef64d158fb cpuid.h: Define signature_*_e[bcd]x macros for matching results of level 0 calls to...
gcc/
        * config/i386/cpuid.h: Define signature_*_e[bcd]x macros for
        matching results of level 0 calls to __cpuid to processor
        manufacturers.
        * config/i386/driver-i386.c (vendor_signatures): Removed.
        (processor_signatures): Removed.
        (host_detect_local_cpu): Replace uses of now-removed SIG_*
        constants with the new signature_*_ebx constants.

libstdc++-v3/
        * src/c++11/random.cc (random_device::_M_init): Use new macro
        signature_INTEL_ebx to check for Intel processors.

From-SVN: r191109
2012-09-09 14:22:10 +00:00
Thiago Macieira fa129f20b3 re PR libstdc++/54172 (__cxa_guard_acquire thread-safety issue)
2012-09-06  Thiago Macieira  <thiago.macieira@intel.com>

	PR libstdc++/54172
        * libsupc++/guard.cc (__cxa_guard_acquire): Exit the loop earlier if
        we detect that another thread has had success. Don't compare_exchange
        from a finished state back to a waiting state. Comment.

From-SVN: r191042
2012-09-06 20:31:08 +00:00
François Dumont 3157879227 re PR libstdc++/54296 (using the object in the map to erase element from the map crashes)
2012-09-05  François Dumont  <fdumont@gcc.gnu.org>

	PR libstdc++/54296
	* include/bits/hashtable.h (_M_erase(size_type, __node_base*,
	__node_type*)): New.
	(erase(const_iterator)): Use latter.
	(_M_erase(std::true_type, const key_type&)): New, likewise.
	(_M_erase(std::false_type, const key_type&)): New. Find all nodes
	matching the key before deallocating them so that the key doesn't
	get invalidated.
	(erase(const key_type&)): Use the new member functions.
	* testsuite/23_containers/unordered_map/erase/54296.cc: New.
	* testsuite/23_containers/unordered_multimap/erase/54296.cc: New.

From-SVN: r190991
2012-09-05 19:41:16 +00:00
Ulrich Drepper efc622f843 random.cc (random_device::_M_init): Check whether cpuid instruction is available by using __get_cpuid_max.
* src/c++11/random.cc (random_device::_M_init): Check whether cpuid
	instruction is available by using __get_cpuid_max.

From-SVN: r190982
2012-09-05 13:54:57 +00:00
Ulrich Drepper ff99de9860 * include/ext/random.tcc (__gnu_cxx:normal_mv_distribution<>)
(operator()): Use __generate() function of _M_nd.

From-SVN: r190975
2012-09-05 12:41:17 +00:00
Ulrich Drepper bf30f22962 random: Add __gnu_cxx:normal_mv_distribution<> class.
* include/ext/random: Add __gnu_cxx:normal_mv_distribution<> class.
	* include/ext/random.tccAdd out-of-line functions for
	__gnu_cxx::normal_mv_distribution<>.
	* testsuite/26_numerics/random/normal_mv_distribution/
	operators/equal.cc: New file.
	* testsuite/26_numerics/random/normal_mv_distribution/
	operators/serialize.cc: New file.
	* testsuite/26_numerics/random/normal_mv_distribution/
	operators/inequal.cc: New file.
	* testsuite/26_numerics/random/normal_mv_distribution/
	cons/default.cc: New file.
	* testsuite/26_numerics/random/normal_mv_distribution/
	cons/parms.cc: New file.
	* testsuite/26_numerics/random/normal_mv_distribution/
	requirements/explicit_instantiation/1.cc: New file.
	* testsuite/26_numerics/random/normal_mv_distribution/
	requirements/typedefs.cc: New file.

From-SVN: r190960
2012-09-05 04:06:24 +00:00
Ulrich Drepper d4d348a9fe random: Add __gnu_cxx::beta_distribution<> class.
* libstdc++-v3/include/ext/random: Add __gnu_cxx::beta_distribution<>
	class.
	* libstdc++-v3/include/ext/random.tcc: Add out-of-line functions for
	__gnu_cxx::beta_distribution<>.
	* libstdc++-v3/testsuite/26_numerics/random/beta_distribution/
	operators/equal.cc: New file.
	* libstdc++-v3/testsuite/26_numerics/random/beta_distribution/
	operators/serialize.cc: New file.
	* libstdc++-v3/testsuite/26_numerics/random/beta_distribution/
	operators/inequal.cc: New file.
	* libstdc++-v3/testsuite/26_numerics/random/beta_distribution/
	cons/parms.cc: New file.
	* libstdc++-v3/testsuite/26_numerics/random/beta_distribution/
	cons/default.cc: New file.
	* libstdc++-v3/testsuite/26_numerics/random/beta_distribution/
	requirements/typedefs.cc: New file.
	* libstdc++-v3/testsuite/26_numerics/random/beta_distribution/
	requirements/explicit_instantiation/1.cc: New file.

From-SVN: r190954
2012-09-04 22:57:09 +00:00
Steven Bosscher 1a044f416a re PR bootstrap/54453 (r190783 breaks bootstrap on powerpc64-unknown-linux-gnu)
PR bootstrap/54453
	* include/Makefile.am: Fix regex.
	* include/Makefile.in: Regenerate.

From-SVN: r190939
2012-09-04 15:28:39 +00:00
Benjamin Kosnik dda78b5c0b ChangeLog fixup
From-SVN: r190811
2012-08-30 19:25:04 +00:00
Benjamin Kosnik 3e7e2f128b PR libstdc++/54005 continued
2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/54005 continued
	* include/std/atomic: Use __atomic_lock_free with
	* include/bits/atomic_base.h: Same.

From-SVN: r190810
2012-08-30 19:24:58 +00:00
Ulrich Drepper 25270f5e5a random.h (random_device): Remove 'return' from constructor.
* include/bits/random.h (random_device) [GLIBCXX_USE_RANDOM_TR1]:
	Remove 'return' from constructor.

From-SVN: r190806
2012-08-30 16:33:09 +00:00
Benjamin Kosnik 90a75549c3 testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.
2012-08-30  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.18.

From-SVN: r190805
2012-08-30 15:58:52 +00:00
Ulrich Drepper d53591084b Missing CL entry
From-SVN: r190796
2012-08-30 02:21:12 +00:00
Ulrich Drepper a8c3f4c972 random.h (random_device): Move implementation to...
* include/bits/random.h (random_device): Move implementation to...
	* src/c++11/random.cc: ...here.  New file.
	* config/abi/pre/gnu.ver: Add new version GLIBCXX_3.4.18.  Export
	std::random_device::* symbols.
	* config/abi/post/x86_64-linux-gnu/baseline_symbols.txt: Generated.
	* src/c++11/Makefile.am (sources): Add random.cc.
	* src/c++11/Makefile.in: Regenerated.

From-SVN: r190787
2012-08-29 22:05:41 +00:00
Ulrich Drepper 1860430ab5 Add simd_fast_mersenne_twister_engine class.
* include/ext/random: New file.
	* include/ext/random.tcc: New file.
	* include/Makefile.am (ext_headers): Add random and random.tcc.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
	operators/inequal.cc: New file.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
	operators/equal.cc: New file.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
	operators/serialize.cc: New file.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
	cons/seed2.cc: New file.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
	cons/default.cc: New file.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
	cons/seed_seq.cc: New file.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
	cons/copy.cc: New file.
	* testsuite/26_numerics/random/simd_fast_mersenne_twister_engine/
	cons/seed1.cc: New file.

From-SVN: r190783
2012-08-29 18:43:08 +00:00
Benjamin Kosnik 27f36b7837 PR libstdc++/54102, part 2
2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/54102, part 2
	* doc/Makefile.am (XSL_HTML_STYLE): use xhtml, not html.
	* doc/Makefile.in: Regenerate.
	* doc/html/*: Same.

From-SVN: r190771
2012-08-29 04:44:10 +00:00
Benjamin Kosnik 6247d6df14 *: Regenerate.
2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

	* doc/html/*: Regenerate.

From-SVN: r190770
2012-08-29 02:09:55 +00:00
Benjamin Kosnik 8d24c97565 re PR libstdc++/54102 (generated html vs. utf8)
2012-08-28  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/54102
	* doc/xsl/customization.xsl.in: New.
	* configure.ac: Output local copy of customization xsl.
	* doc/Makefile.am (stamp-html-single-docbook): Use XSL_LOCAL_STYLE.
	(stamp-html-docbook): Set stringparam to UTF-8.
	* Makefile.in: Regenerated.
	* configure: Same.
	* doc/Makefile.in: Same.

From-SVN: r190768
2012-08-29 01:37:16 +00:00
Ulrich Drepper 7b93bdde91 Add interfaces to retrieve random numbers in bulk.
* include/bits/random.h (uniform_int_distribution<>): Add __generate
	and __generate_impl functions.
	(uniform_real_distribution<>): Likewise.
	(bernoulli_distribution): Likewise.
	(geometric_distribution<>): Likewise.
	(negative_binomial_distribution<>): Likewise.
	(poisson_distribution<>): Likewise.
	(exponential_distribution<>): Likewise.
	(normal_distribution<>): Likewise.
	(lognormal_distribution<>): Likewise.
	(chi_squared_distribution<>): Likewise.
	(cauchy_distribution<>): Likewise.
	(fisher_f_distribution<>): Likewise.
	(student_t_distribution<>): Likewise.
	(gamma_distribution<>): Likewise.
	(weibull_distribution<>): Likewise.
	(extreme_value_distribution<>): Likewise.
	(discrete_distribution<>): Likewise.
	(piecewise_constant_distribution<>): Likewise.
	(piecewise_linear_distribution<>): Likewise.
	* include/bits/random.tcc (__detail::_Power_of_2): New function.
	(uniform_int_distribution<>::__generate_impl): New function.
	(uniform_real_distribution<>::__generate_impl): New function.
	(bernoulli_distribution::__generate_impl): New function.
	(geometric_distribution<>::__generate_impl): New function.
	(negative_binomial_distribution<>::__generate_impl): New function.
	(poisson_distribution<>::__generate_impl): New function.
	(exponential_distribution<>::__generate_impl): New function.
	(normal_distribution<>::__generate_impl): New function.
	(lognormal_distribution<>::__generate_impl): New function.
	(chi_squared_distribution<>::__generate_impl): New function.
	(cauchy_distribution<>::__generate_impl): New function.
	(fisher_f_distribution<>::__generate_impl): New function.
	(student_t_distribution<>::__generate_impl): New function.
	(gamma_distribution<>::__generate_impl): New function.
	(weibull_distribution<>::__generate_impl): New function.
	(extreme_value_distribution<>::__generate_impl): New function.
	(discrete_distribution<>::__generate_impl): New function.
	(piecewise_constant_distribution<>::__generate_impl): New function.
	(piecewise_linear_distribution<>::__generate_impl): New function.

From-SVN: r190712
2012-08-27 14:13:15 +00:00
Ulrich Drepper b668e41af6 random.h (mersenne_twister_engine): Don't inline discard here.
* include/bits/random.h (mersenne_twister_engine): Don't inline
	discard here.  New member function _M_gen_rand.
	* include/bits/random.tcc (mersenne_twister_engine<>::_M_gen_rand):
	New function.  Extracted from operator().
	(mersenne_twister_engine<>::discard): New implementation which
	skips in large steps.
	(mersenne_twister_engine<>::operator()): Use _M_gen_rand.

From-SVN: r190711
2012-08-27 12:08:16 +00:00
Marc Glisse a30e18c147 re PR libstdc++/54376 (incorrect complaint about redefinition)
2012-08-26  Marc Glisse  <marc.glisse@inria.fr>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/54376
	* include/bits/random.h (lognormal_distribution<>::operator==,
	gamma_distribution<>::operator==,
	chi_squared_distribution<>::operator==,
	fisher_f_distribution<>::operator==,
	student_t_distribution<>::operator==,
	binomial_distribution<>::operator==,
	negative_binomial_distribution<>::operator==,
	poisson_distribution<>::operator==): Change inline friend definition
	to non-template.
	* testsuite/26_numerics/random/binomial_distribution/requirements/
	explicit_instantiation/1.cc: New.
	* testsuite/26_numerics/random/cauchy_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/chi_squared_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/discrete_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/exponential_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/extreme_value_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/fisher_f_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/gamma_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/geometric_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/lognormal_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/negative_binomial_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/normal_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_constant_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/piecewise_linear_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/poisson_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/student_t_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/uniform_int_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/uniform_real_distribution/
	requirements/explicit_instantiation/1.cc: Likewise.
	* testsuite/26_numerics/random/weibull_distribution/requirements/
	explicit_instantiation/1.cc: Likewise.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r190694
2012-08-26 17:22:43 +00:00
Jonathan Wakely ae1fab9c83 * testsuite/30_threads/async/54297.cc: Add dg-require-nanosleep.
From-SVN: r190691
2012-08-26 15:59:20 +01:00
Jonathan Wakely 3dd808fe94 re PR libstdc++/54297 ([C++11] Segmentation fault with std::async and released shared state)
PR libstdc++/54297
	* src/c++11/future.cc (~_Async_state_common): Move to...
	* src/c++11/compatibility-thread-c++0x.cc (~_Async_state_common):
	Here.
	(_GLIBCXX_ABI_COMPAT_ASYNC): Rename to _GLIBCXX_ASYNC_ABI_COMPAT.
	* include/std/future (_GLIBCXX_ABI_COMPAT_ASYNC): Likewise.

From-SVN: r190685
2012-08-26 14:49:44 +01:00
Jonathan Wakely efea8be224 Add testcase author to ChangeLog.
From-SVN: r190677
2012-08-26 01:14:59 +01:00
Jonathan Wakely 6d79ba303c re PR libstdc++/54351 (~unique_ptr() should not set stored pointer to null)
PR libstdc++/54351
	* include/bits/unique_ptr.h (unique_ptr<T>::~unique_ptr): Do not use
	reset().
	(unique_ptr<T[]>::~unique_ptr()): Likewise.
	* testsuite/20_util/unique_ptr/54351.cc: New.
	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Adjust dg-error
	line numbers.

From-SVN: r190676
2012-08-26 01:12:40 +01:00
Jonathan Wakely 277f43d2d0 re PR libstdc++/54297 ([C++11] Segmentation fault with std::async and released shared state)
PR libstdc++/54297
	* include/std/future (~_Async_state_impl): Join thread before
	derived class members are destroyed.
	(~_Async_state_common): Only define non-trivial destructor when
	included from future.cc for ABI compatibility reasons.
	* src/c++11/future.cc (_GLIBCXX_ABI_COMPAT_ASYNC): Define.
	* testsuite/30_threads/async/54297.cc: New.

From-SVN: r190672
2012-08-26 00:01:40 +01:00
Jonathan Wakely 05ee55c46b re PR libstdc++/54248 (Comment in standard library header talks about boost)
PR libstdc++/54248
	* include/bits/concept_check.h: Replace references to boost
	namespace.

From-SVN: r190668
2012-08-25 19:51:53 +01:00
Jason Merrill 03b8c9bf9a pt.c (tsubst_default_argument): Indicate where the default argument is being instantiated for.
* pt.c (tsubst_default_argument): Indicate where the default
	argument is being instantiated for.
	(tsubst_expr): Restore previous location.
	(tsubst_copy_and_build): Set and restore location.
	* call.c (build_new_method_call_1): Remember location of call.
	* semantics.c (finish_call_expr): Here too.
	* parser.c (cp_parser_omp_for_loop): Remember the location of the
	increment expression.

From-SVN: r190662
2012-08-24 22:27:27 -04:00
Jonathan Wakely 3f6de40f27 re PR libstdc++/54354 (TODO extended iomanip manipulators std::get_time and std::put_time (C++11, section 27.7.5))
PR libstdc++/54354
	* doc/xml/manual/status_cxx2011.xml: Note missing manipulators.
	* doc/html/*: Regenerate.

From-SVN: r190616
2012-08-23 09:37:19 +01:00
Tom Tromey c4269a634c cxx11.cc (struct datum): New.
* testsuite/libstdc++-prettyprinters/cxx11.cc (struct datum):
	New.
	(global): New global.
	(main): Add test for unique_ptr.
	* python/libstdcxx/v6/printers.py
	(UniquePointerPrinter.to_string): Extract the pointer and also
	print its type.

From-SVN: r190417
2012-08-15 18:37:30 +00:00
David Adler 2942db6337 re PR libstdc++/54185 (condition_variable not properly destructed)
2012-08-13  David Adler  <d.adler.s@gmail.com>

	PR libstdc++/54185
	* src/c++11/condition_variable.cc (condition_variable): Always
	destroy native type in destructor.
	* testsuite/30_threads/condition_variable/54185.cc: New.

From-SVN: r190356
2012-08-13 20:56:50 +01:00
François Dumont 181a5a136f 2012-08-10 François Dumont <fdumont@gcc.gnu.org>
Ollie Wild  <aaw@google.com>

	* include/bits/hashtable.h
	(_Hashtable<>_M_insert_multi_node(hash_code, node_type*)): New.
	(_Hashtable<>_M_insert(_Args&&, false_type)): Use latter.
	(_Hashtable<>::_M_emplace(false_type, _Args&&...)): Likewise.
	(_Hashtable<>::_M_insert_bucket): Replace by ...
	(_Hashtable<>::_M_insert_unique_node(size_type, hash_code, node_type*)):
	... this, new.
	(_Hashtable<>::_M_insert(_Args&&, true_type)): Use latter.
	(_Hashtable<>::_M_emplace(true_type, _Args&&...)): Likewise.
	* include/bits/hashtable_policy.h (_Map_base<>::operator[]): Use
	latter, emplace the value_type rather than insert.
	* include/std/unordered_map: Include tuple.
	* include/std/unordered_set: Likewise.
	* testsuite/util/testsuite_counter_type.h: New.
	* testsuite/23_containers/unordered_map/operators/2.cc: New.

Co-Authored-By: Ollie Wild <aaw@google.com>

From-SVN: r190355
2012-08-13 19:43:19 +00:00
Marc Glisse 6a9573cc7b re PR libstdc++/54112 (including complex.h and complex fails in C++03)
2012-08-13  Marc Glisse  <marc.glisse@inria.fr>

	PR libstdc++/54112
	* include/c_compatibility/complex.h: Undefine complex, always
	include system's complex.h if present.
	* testsuite/26_numerics/complex/c99.cc: New testcase.
	* testsuite/17_intro/headers/c++1998/complex.cc: Likewise.
	* doc/xml/manual/numerics.xml: Document it.

From-SVN: r190340
2012-08-13 11:55:00 +00:00
Jonathan Wakely 3722862e60 re PR libstdc++/52681 ([C++11] Using std::thread without -pthread crashes without warning)
PR libstdc++/52681
	* src/c++11/thread.cc (thread::_M_start_thread): Improve error text
	when threads are not enabled.

From-SVN: r190330
2012-08-12 19:57:53 +01:00
Jonathan Wakely 9ab48d6e6c acinclude.m4: Update references to final C++11 standard.
* acinclude.m4: Update references to final C++11 standard.
	* include/bits/shared_ptr.h: Likewise.
	* include/bits/shared_ptr_base.h: Likewise.
	* include/bits/unique_ptr.h: Likewise.
	* include/std/chrono: Likewise.
	* include/std/thread: Likewise.

From-SVN: r190271
2012-08-09 23:45:20 +01:00
Benjamin Kosnik 743ca87fe8 re PR libstdc++/54005 (Use __atomic_always_lock_free in libstdc++ is_lock_free instead of __atomic_is_lock_free)
2012-08-07  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/54005
	* include/std/atomic: Use __atomic_always_lock_free.
	* include/bits/atomic_base.h: Same.

From-SVN: r190216
2012-08-07 23:03:55 +00:00
Paolo Carlini ef859c9d3c [multiple changes]
2012-08-06  Paolo Carlini  <paolo.carlini@oracle.com>

	* testsuite/decimal/mixed-mode-cmp_neg.cc: Add test variable; minor
	tweaks.
	* testsuite/decimal/unary-arith.cc: Likewise.
	* testsuite/decimal/ctor.cc: Likewise.
	* testsuite/decimal/conversion-to-integral.cc: Likewise.
	* testsuite/decimal/make-decimal.cc: Likewise.
	* testsuite/decimal/comparison.cc: Likewise.
	* testsuite/decimal/incdec-memfunc.cc: Likewise.
	* testsuite/decimal/conversion-to-generic-float.cc: Likewise.
	* testsuite/decimal/compound-assignment-memfunc.cc: Likewise.
	* testsuite/decimal/cast_neg.cc: Likewise.
	* testsuite/decimal/incdec.cc: Likewise.
	* testsuite/decimal/mixed-mode-arith_neg.cc: Likewise.
	* testsuite/decimal/binary-arith.cc: Likewise.
	* testsuite/decimal/conversion-from-float.cc: Likewise.
	* testsuite/decimal/conversion-from-integral.cc: Likewise.
	* testsuite/decimal/compound-assignment.cc: Likewise.

2012-08-06  Peter Bergner  <bergner@vnet.ibm.com>

	PR libstdc++/54036
	* include/decimal/decimal.h (_DEFINE_DECIMAL_UNARY_OP): Use _Op as
	a unary operator.
	* testsuite/decimal/pr54036-1.cc: New test.
	* testsuite/decimal/pr54036-2.cc: Likewise.
	* testsuite/decimal/pr54036-3.cc: Likewise.

From-SVN: r190186
2012-08-06 18:06:42 +00:00