apparently for all single-thread targets (like cris-elf).

Could it be that you forgot to actually test that this works on
single-thread targets?  Or how did you test that?

Build worked with trunk 134647 and was broken with 134655 (still
broken with 134662 in the same way), yours being the only
suspect commit.  For 4.3, it worked with 134632 and was broken
with 134650.  (I don't see why you put stuff like this on a
release branch.)  For trunk 134655:

/bin/sh ../libtool --tag CXX --mode=compile /tmp/x/./gcc/xgcc -shared-libgcc 
-B/tmp/x/./gcc -nostdinc++ -L/tmp/x/cris-elf/libstdc++-v3/src 
-L/tmp/x/cris-elf/libstdc++-v3/src/.libs -nostdinc -B/tmp/x/cris-elf/newlib/ 
-isystem /tmp/x/cris-elf/newlib/targ-include -isystem 
/tmp/y/newlib/libc/include -B/tmp/x/cris-elf/libgloss/cris 
-L/tmp/x/cris-elf/libgloss/libnosys -L/tmp/y/libgloss/cris 
-B/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/bin/ 
-B/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/lib/ -isystem 
/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/include -isystem 
/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/sys-include  
-I/tmp/x/cris-elf/libstdc++-v3/include/cris-elf 
-I/tmp/x/cris-elf/libstdc++-v3/include -I/tmp/y/libstdc++-v3/libsupc++  
-fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual  
-fdiagnostics-show-location=once  -ffunction-sections -fdata-sections  -g -O2   
 -fopenmp -D_GLIBCXX_PARALLEL -I/tmp/x/cris-elf/libstdc++-v3/../libgomp -c 
/tmp/y/libstdc++-v3/src/parallel_l!
 ist.cc
libtool: compile:  /tmp/x/./gcc/xgcc -shared-libgcc -B/tmp/x/./gcc -nostdinc++ 
-L/tmp/x/cris-elf/libstdc++-v3/src -L/tmp/x/cris-elf/libstdc++-v3/src/.libs 
-nostdinc -B/tmp/x/cris-elf/newlib/ -isystem 
/tmp/x/cris-elf/newlib/targ-include -isystem /tmp/y/newlib/libc/include 
-B/tmp/x/cris-elf/libgloss/cris -L/tmp/x/cris-elf/libgloss/libnosys 
-L/tmp/y/libgloss/cris -B/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/bin/ 
-B/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/lib/ -isystem 
/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/include -isystem 
/tmp/hpautotest-gcc1/cris-elf/pre/cris-elf/sys-include 
-I/tmp/x/cris-elf/libstdc++-v3/include/cris-elf 
-I/tmp/x/cris-elf/libstdc++-v3/include -I/tmp/y/libstdc++-v3/libsupc++ 
-fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual 
-fdiagnostics-show-location=once -ffunction-sections -fdata-sections -g -O2 
-fopenmp -D_GLIBCXX_PARALLEL -I/tmp/x/cris-elf/libstdc++-v3/../libgomp -c 
/tmp/y/libstdc++-v3/src/parallel_list.cc -o parallel_list.o
xgcc: unrecognized option '-pthread'
In file included from 
/tmp/x/cris-elf/libstdc++-v3/include/parallel/algobase.h:46,
                 from 
/tmp/x/cris-elf/libstdc++-v3/include/bits/stl_algobase.h:1137,
                 from /tmp/x/cris-elf/libstdc++-v3/include/list:66,
                 from /tmp/y/libstdc++-v3/src/list.cc:56,
                 from /tmp/y/libstdc++-v3/src/parallel_list.cc:30:
/tmp/x/cris-elf/libstdc++-v3/include/parallel/base.h:43:17: error: omp.h: No 
such file or directory
In file included from 
/tmp/x/cris-elf/libstdc++-v3/include/parallel/parallel.h:45,
                 from /tmp/x/cris-elf/libstdc++-v3/include/parallel/base.h:46,
                 from 
/tmp/x/cris-elf/libstdc++-v3/include/parallel/algobase.h:46,
                 from 
/tmp/x/cris-elf/libstdc++-v3/include/bits/stl_algobase.h:1137,
                 from /tmp/x/cris-elf/libstdc++-v3/include/list:66,
                 from /tmp/y/libstdc++-v3/src/list.cc:56,
                 from /tmp/y/libstdc++-v3/src/parallel_list.cc:30:
/tmp/x/cris-elf/libstdc++-v3/include/parallel/tags.h: In member function 
'__gnu_parallel::thread_index_t 
__gnu_parallel::parallel_tag::get_num_threads()':
/tmp/x/cris-elf/libstdc++-v3/include/parallel/tags.h:79: error: 
'omp_get_max_threads' was not declared in this scope
In file included from 
/tmp/x/cris-elf/libstdc++-v3/include/parallel/algobase.h:46,
                 from 
/tmp/x/cris-elf/libstdc++-v3/include/bits/stl_algobase.h:1137,
                 from /tmp/x/cris-elf/libstdc++-v3/include/list:66,
                 from /tmp/y/libstdc++-v3/src/list.cc:56,
                 from /tmp/y/libstdc++-v3/src/parallel_list.cc:30:
/tmp/x/cris-elf/libstdc++-v3/include/parallel/base.h: In function 'int 
__gnu_parallel::get_max_threads()':
/tmp/x/cris-elf/libstdc++-v3/include/parallel/base.h:94: error: 
'omp_get_max_threads' was not declared in this scope
In file included from /tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:46,
                 from 
/tmp/x/cris-elf/libstdc++-v3/include/parallel/algobase.h:49,
                 from 
/tmp/x/cris-elf/libstdc++-v3/include/bits/stl_algobase.h:1137,
                 from /tmp/x/cris-elf/libstdc++-v3/include/list:66,
                 from /tmp/y/libstdc++-v3/src/list.cc:56,
                 from /tmp/y/libstdc++-v3/src/parallel_list.cc:30:
/tmp/x/cris-elf/libstdc++-v3/include/parallel/compatibility.h: In function 
'void __gnu_parallel::yield()':
/tmp/x/cris-elf/libstdc++-v3/include/parallel/compatibility.h:351: error: 
'sched_yield' was not declared in this scope
In file included from 
/tmp/x/cris-elf/libstdc++-v3/include/parallel/algobase.h:49,
                 from 
/tmp/x/cris-elf/libstdc++-v3/include/bits/stl_algobase.h:1137,
                 from /tmp/x/cris-elf/libstdc++-v3/include/list:66,
                 from /tmp/y/libstdc++-v3/src/list.cc:56,
                 from /tmp/y/libstdc++-v3/src/parallel_list.cc:30:
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h: In function 
'std::pair<_T1, _T2> __gnu_parallel::find_template(RandomAccessIterator1, 
RandomAccessIterator1, RandomAccessIterator2, Pred, Selector, 
__gnu_parallel::equal_split_tag)':
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:120: error: 'omp_lock_t' 
was not declared in this scope
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:120: error: expected ';' 
before 'result_lock'
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:121: error: 'result_lock' 
was not declared in this scope
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:121: error: there are no 
arguments to 'omp_init_lock' that depend on a template parameter, so a 
declaration of 'omp_init_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:121: note: (if you use 
'-fpermissive', G++ will accept your code, but allowing the use of an 
undeclared name is deprecated)
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:128: error: there are no 
arguments to 'omp_get_num_threads' that depend on a template parameter, so a 
declaration of 'omp_get_num_threads' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:133: error: there are no 
arguments to 'omp_get_thread_num' that depend on a template parameter, so a 
declaration of 'omp_get_thread_num' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:147: error: there are no 
arguments to 'omp_set_lock' that depend on a template parameter, so a 
declaration of 'omp_set_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:150: error: there are no 
arguments to 'omp_unset_lock' that depend on a template parameter, so a 
declaration of 'omp_unset_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:158: error: there are no 
arguments to 'omp_destroy_lock' that depend on a template parameter, so a 
declaration of 'omp_destroy_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h: In function 
'std::pair<_T1, _T2> __gnu_parallel::find_template(RandomAccessIterator1, 
RandomAccessIterator1, RandomAccessIterator2, Pred, Selector, 
__gnu_parallel::growing_blocks_tag)':
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:226: error: 'omp_lock_t' 
was not declared in this scope
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:226: error: expected ';' 
before 'result_lock'
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:227: error: 'result_lock' 
was not declared in this scope
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:227: error: there are no 
arguments to 'omp_init_lock' that depend on a template parameter, so a 
declaration of 'omp_init_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:233: error: there are no 
arguments to 'omp_get_num_threads' that depend on a template parameter, so a 
declaration of 'omp_get_num_threads' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:236: error: there are no 
arguments to 'omp_get_thread_num' that depend on a template parameter, so a 
declaration of 'omp_get_thread_num' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:262: error: there are no 
arguments to 'omp_set_lock' that depend on a template parameter, so a 
declaration of 'omp_set_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:270: error: there are no 
arguments to 'omp_unset_lock' that depend on a template parameter, so a 
declaration of 'omp_unset_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:285: error: there are no 
arguments to 'omp_destroy_lock' that depend on a template parameter, so a 
declaration of 'omp_destroy_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h: In function 
'std::pair<_T1, _T2> __gnu_parallel::find_template(RandomAccessIterator1, 
RandomAccessIterator1, RandomAccessIterator2, Pred, Selector, 
__gnu_parallel::constant_size_blocks_tag)':
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:345: error: 'omp_lock_t' 
was not declared in this scope
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:345: error: expected ';' 
before 'result_lock'
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:346: error: 'result_lock' 
was not declared in this scope
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:346: error: there are no 
arguments to 'omp_init_lock' that depend on a template parameter, so a 
declaration of 'omp_init_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:354: error: there are no 
arguments to 'omp_get_num_threads' that depend on a template parameter, so a 
declaration of 'omp_get_num_threads' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:356: error: there are no 
arguments to 'omp_get_thread_num' that depend on a template parameter, so a 
declaration of 'omp_get_thread_num' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:381: error: there are no 
arguments to 'omp_set_lock' that depend on a template parameter, so a 
declaration of 'omp_set_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:384: error: there are no 
arguments to 'omp_unset_lock' that depend on a template parameter, so a 
declaration of 'omp_unset_lock' must be available
/tmp/x/cris-elf/libstdc++-v3/include/parallel/find.h:397: error: there are no 
arguments to 'omp_destroy_lock' that depend on a template parameter, so a 
declaration of 'omp_destroy_lock' must be available
make[4]: *** [parallel_list.lo] Error 1
make[4]: Leaving directory `/tmp/x/cris-elf/libstdc++-v3/src'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/tmp/x/cris-elf/libstdc++-v3'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/tmp/x/cris-elf/libstdc++-v3'
make[1]: *** [all-target-libstdc++-v3] Error 2
make[1]: Leaving directory `/tmp/x'
make: *** [all] Error 2
 

Reply via email to