aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include
diff options
context:
space:
mode:
authorBenjamin Kosnik <bkoz@redhat.com>2007-12-15 16:19:37 +0000
committerBenjamin Kosnik <bkoz@gcc.gnu.org>2007-12-15 16:19:37 +0000
commit58a6ef4b0981e35f8faa2363bbc8a3790c1381b0 (patch)
tree6091c8780525e37a0870cfc480d0522a0efb4d9c /libstdc++-v3/include
parentffe3dcd9d54ecf2a3fd6bfb282eeb6c9c1f086aa (diff)
downloadgcc-58a6ef4b0981e35f8faa2363bbc8a3790c1381b0.zip
gcc-58a6ef4b0981e35f8faa2363bbc8a3790c1381b0.tar.gz
gcc-58a6ef4b0981e35f8faa2363bbc8a3790c1381b0.tar.bz2
partial_sum.h: Include new.
2007-12-15 Benjamin Kosnik <bkoz@redhat.com> Paolo Carlini <pcarlini@suse.de> * include/parallel/partial_sum.h: Include new. Fix for DR 402. * include/parallel/multiway_merge.h:Fix for DR 402. * include/parallel/losertree.h: Same. * include/parallel/quicksort.h: Same. * include/parallel/random_shuffle.h: Same. * include/parallel/multiway_mergesort.h: Same. Co-Authored-By: Paolo Carlini <pcarlini@suse.de> From-SVN: r130956
Diffstat (limited to 'libstdc++-v3/include')
-rw-r--r--libstdc++-v3/include/parallel/losertree.h4
-rw-r--r--libstdc++-v3/include/parallel/multiway_merge.h4
-rw-r--r--libstdc++-v3/include/parallel/multiway_mergesort.h2
-rw-r--r--libstdc++-v3/include/parallel/partial_sum.h5
-rw-r--r--libstdc++-v3/include/parallel/quicksort.h2
-rw-r--r--libstdc++-v3/include/parallel/random_shuffle.h4
6 files changed, 11 insertions, 10 deletions
diff --git a/libstdc++-v3/include/parallel/losertree.h b/libstdc++-v3/include/parallel/losertree.h
index 42cb54f..2f2fae7 100644
--- a/libstdc++-v3/include/parallel/losertree.h
+++ b/libstdc++-v3/include/parallel/losertree.h
@@ -265,11 +265,11 @@ template<typename T, typename Comparator = std::less<T> >
{
// Construct all keys, so we can easily deconstruct them.
for (unsigned int i = 0; i < (2 * k); ++i)
- new(&(losers[i].key)) T(key);
+ ::new(&(losers[i].key)) T(key);
first_insert = false;
}
else
- new(&(losers[pos].key)) T(key);
+ ::new(&(losers[pos].key)) T(key);
losers[pos].sup = sup;
losers[pos].source = source;
diff --git a/libstdc++-v3/include/parallel/multiway_merge.h b/libstdc++-v3/include/parallel/multiway_merge.h
index c1bf251..818049c 100644
--- a/libstdc++-v3/include/parallel/multiway_merge.h
+++ b/libstdc++-v3/include/parallel/multiway_merge.h
@@ -800,7 +800,7 @@ template<
{
if (seqs_begin[pi].first != seqs_begin[pi].second)
{
- new(&(fe[nrs])) value_type(*(seqs_begin[pi].first));
+ ::new(&(fe[nrs])) value_type(*(seqs_begin[pi].first));
source[nrs] = pi;
++nrs;
total_length += _GLIBCXX_PARALLEL_LENGTH(seqs_begin[pi]);
@@ -1582,7 +1582,7 @@ template<
_GLIBCXX_PARALLEL_LENGTH(seqs_begin[s]) * (double(i + 1) /
(num_samples + 1)) * (double(length)
/ total_length));
- new(&(samples[s * num_samples + i])) value_type(
+ ::new(&(samples[s * num_samples + i])) value_type(
seqs_begin[s].first[sample_index]);
}
diff --git a/libstdc++-v3/include/parallel/multiway_mergesort.h b/libstdc++-v3/include/parallel/multiway_mergesort.h
index 0476474..e541850 100644
--- a/libstdc++-v3/include/parallel/multiway_mergesort.h
+++ b/libstdc++-v3/include/parallel/multiway_mergesort.h
@@ -139,7 +139,7 @@ template<typename RandomAccessIterator, typename _DifferenceTp>
num_samples + 1, es);
for (difference_type i = 0; i < num_samples; i++)
- new(&(sd->samples[iam * num_samples + i])) value_type(
+ ::new(&(sd->samples[iam * num_samples + i])) value_type(
sd->source[sd->starts[iam] + es[i + 1]]);
delete[] es;
diff --git a/libstdc++-v3/include/parallel/partial_sum.h b/libstdc++-v3/include/parallel/partial_sum.h
index b168e46..e4a4276 100644
--- a/libstdc++-v3/include/parallel/partial_sum.h
+++ b/libstdc++-v3/include/parallel/partial_sum.h
@@ -40,6 +40,7 @@
#define _GLIBCXX_PARALLEL_PARTIAL_SUM_H 1
#include <omp.h>
+#include <new>
#include <bits/stl_algobase.h>
#include <parallel/parallel.h>
#include <parallel/numericfwd.h>
@@ -155,11 +156,11 @@ template<
*result = *begin;
parallel_partial_sum_basecase(begin + 1, begin + borders[1],
result + 1, bin_op, *begin);
- new(&(sums[iam])) value_type(*(result + borders[1] - 1));
+ ::new(&(sums[iam])) value_type(*(result + borders[1] - 1));
}
else
{
- new(&(sums[iam])) value_type(
+ ::new(&(sums[iam])) value_type(
std::accumulate(begin + borders[iam] + 1,
begin + borders[iam + 1],
*(begin + borders[iam]),
diff --git a/libstdc++-v3/include/parallel/quicksort.h b/libstdc++-v3/include/parallel/quicksort.h
index 16901ed..d94a49d 100644
--- a/libstdc++-v3/include/parallel/quicksort.h
+++ b/libstdc++-v3/include/parallel/quicksort.h
@@ -80,7 +80,7 @@ namespace __gnu_parallel
{
const unsigned long long index = static_cast<unsigned long long>(s)
* n / num_samples;
- new(&(samples[s])) value_type(begin[index]);
+ ::new(&(samples[s])) value_type(begin[index]);
}
__gnu_sequential::sort(samples, samples + num_samples, comp);
diff --git a/libstdc++-v3/include/parallel/random_shuffle.h b/libstdc++-v3/include/parallel/random_shuffle.h
index 6bce8d6..663962b 100644
--- a/libstdc++-v3/include/parallel/random_shuffle.h
+++ b/libstdc++-v3/include/parallel/random_shuffle.h
@@ -213,7 +213,7 @@ template<typename RandomAccessIterator, typename RandomNumberGenerator>
thread_index_t target_p = bin_proc[target_bin];
// Last column [d->num_threads] stays unchanged.
- new(&(temporaries[target_p][dist[target_bin + 1]++])) value_type(
+ ::new(&(temporaries[target_p][dist[target_bin + 1]++])) value_type(
*(source + i + start));
}
@@ -478,7 +478,7 @@ template<typename RandomAccessIterator, typename RandomNumberGenerator>
// Distribute according to oracles.
for (difference_type i = 0; i < n; ++i)
- new(&(target[(dist0[oracles[i]])++])) value_type(*(begin + i));
+ ::new(&(target[(dist0[oracles[i]])++])) value_type(*(begin + i));
for (int b = 0; b < num_bins; ++b)
{