[Bug libstdc++/33487] New: parallel v3: more functions not in right namespace
bangerth at dealii dot org
gcc-bugzilla@gcc.gnu.org
Wed Sep 19 02:38:00 GMT 2007
As a corollary to PR 33486, here is a valid program that doesn't
compile in parallel mode:
------------------
#include <algorithm>
void f () {
int *p, *q;
std::random_shuffle (p, q);
}
------------------
The reason is that random_shuffle internally calls a function that isn't
found in the correct namespaces:
4.3.0/parallel/random_shuffle.h: In function 'void
__gnu_parallel::sequential_random_shuffle(RandomAccessIterator,
RandomAccessIterator, RandomNumberGenerator&) [with RandomAccessIterator =
int*, RandomNumberGenerator = std::__parallel::c_rand_number<int>]':
4.3.0/parallel/algo.h:1230: instantiated from 'void
std::__parallel::random_shuffle(_RAIter, _RAIter, RandomNumberGenerator&) [with
_RAIter = int*, RandomNumberGenerator = std::__parallel::c_rand_number<int>]'
4.3.0/parallel/algo.h:1217: instantiated from 'void
std::__parallel::random_shuffle(_RAIter, _RAIter) [with _RAIter = int*]'
x.cc:4: instantiated from here
4.3.0/parallel/random_shuffle.h:471: error: 'partial_sum' was not declared in
this scope
4.3.0/parallel/random_shuffle.h: In function 'void
__gnu_parallel::parallel_random_shuffle_drs_pu(__gnu_parallel::DRSSorterPU<RandomAccessIterator,
RandomNumberGenerator>*) [with RandomAccessIterator = int*,
RandomNumberGenerator = __gnu_parallel::random_number]':
4.3.0/parallel/random_shuffle.h:380: instantiated from 'void
__gnu_parallel::parallel_random_shuffle_drs(RandomAccessIterator,
RandomAccessIterator, typename
std::iterator_traits<_Iterator>::difference_type, int, RandomNumberGenerator&)
[with RandomAccessIterator = int*, RandomNumberGenerator =
std::__parallel::c_rand_number<int>]'
4.3.0/parallel/random_shuffle.h:511: instantiated from 'void
__gnu_parallel::parallel_random_shuffle(RandomAccessIterator,
RandomAccessIterator, RandomNumberGenerator) [with RandomAccessIterator = int*,
RandomNumberGenerator = std::__parallel::c_rand_number<int>]'
4.3.0/parallel/algo.h:1228: instantiated from 'void
std::__parallel::random_shuffle(_RAIter, _RAIter, RandomNumberGenerator&) [with
_RAIter = int*, RandomNumberGenerator = std::__parallel::c_rand_number<int>]'
4.3.0/parallel/algo.h:1217: instantiated from 'void
std::__parallel::random_shuffle(_RAIter, _RAIter) [with _RAIter = int*]'
x.cc:4: instantiated from here
4.3.0/parallel/random_shuffle.h:187: error: 'partial_sum' was not declared in
this scope
4.3.0/parallel/random_shuffle.h: In function 'void
__gnu_parallel::sequential_random_shuffle(RandomAccessIterator,
RandomAccessIterator, RandomNumberGenerator&) [with RandomAccessIterator =
int*, RandomNumberGenerator = __gnu_parallel::random_number]':
4.3.0/parallel/random_shuffle.h:252: instantiated from 'void
__gnu_parallel::parallel_random_shuffle_drs_pu(__gnu_parallel::DRSSorterPU<RandomAccessIterator,
RandomNumberGenerator>*) [with RandomAccessIterator = int*,
RandomNumberGenerator = __gnu_parallel::random_number]'
4.3.0/parallel/random_shuffle.h:380: instantiated from 'void
__gnu_parallel::parallel_random_shuffle_drs(RandomAccessIterator,
RandomAccessIterator, typename
std::iterator_traits<_Iterator>::difference_type, int, RandomNumberGenerator&)
[with RandomAccessIterator = int*, RandomNumberGenerator =
std::__parallel::c_rand_number<int>]'
4.3.0/parallel/random_shuffle.h:511: instantiated from 'void
__gnu_parallel::parallel_random_shuffle(RandomAccessIterator,
RandomAccessIterator, RandomNumberGenerator) [with RandomAccessIterator = int*,
RandomNumberGenerator = std::__parallel::c_rand_number<int>]'
4.3.0/parallel/algo.h:1228: instantiated from 'void
std::__parallel::random_shuffle(_RAIter, _RAIter, RandomNumberGenerator&) [with
_RAIter = int*, RandomNumberGenerator = std::__parallel::c_rand_number<int>]'
4.3.0/parallel/algo.h:1217: instantiated from 'void
std::__parallel::random_shuffle(_RAIter, _RAIter) [with _RAIter = int*]'
x.cc:4: instantiated from here
4.3.0/parallel/random_shuffle.h:471: error: 'partial_sum' was not declared in
this scope
--
Summary: parallel v3: more functions not in right namespace
Product: gcc
Version: 4.3.0
Status: UNCONFIRMED
Keywords: rejects-valid
Severity: normal
Priority: P3
Component: libstdc++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: bangerth at dealii dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33487
More information about the Gcc-bugs
mailing list