I've tested mainline r156055 with the patch for PR42798 both with and without --enable-build-with-cxx; a number of testsuites show additional failures for --enable-build-with-cxx.
I've attached simple diffs from the gcc to g++ bootstrap regtest summaries. Did this ever work properly?
i686-pc-linux-gnu/libstdc++-v3/testsuite/libstdc++.sum 1c1 < Test Run By amylaar on Wed Jan 20 12:06:41 2010 --- > Test Run By amylaar on Wed Jan 20 12:26:07 2010 11c11 < PASS: abi_check --- > FAIL: abi_check 7578c7578,7579 < # of expected passes 7387 --- > # of expected passes 7386 > # of unexpected failures 1 gcc/testsuite/gfortran/gfortran.sum 1c1 < Test Run By amylaar on Wed Jan 20 12:06:43 2010 --- > Test Run By amylaar on Wed Jan 20 13:02:39 2010 16372c16372 < PASS: gfortran.dg/ldist-1.f90 -O scan-tree-dump-times ldist "distributed: split to 4 loops" 1 --- > FAIL: gfortran.dg/ldist-1.f90 -O scan-tree-dump-times ldist "distributed: > split to 4 loops" 1 35807,35808c35807,35808 < # of expected passes 33486 < # of unexpected failures 3 --- > # of expected passes 33485 > # of unexpected failures 4 35811c35811 < /user/inria/fsf/bld-gcc-20/gcc/testsuite/gfortran/../../gfortran version 4.5.0 20100120 (experimental) (GCC) --- > /user/inria/fsf/bld-gcc-cxx12/gcc/testsuite/gfortran/../../gfortran version > 4.5.0 20100120 (experimental) (GCC) gcc/testsuite/g++/g++.sum 1c1 < Test Run By amylaar on Wed Jan 20 12:06:43 2010 --- > Test Run By amylaar on Wed Jan 20 13:02:39 2010 14052,14084c14052,14084 < PASS: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so (test for warnings, line ) < PASS: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so (test for warnings, line 7) < PASS: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so (test for warnings, line 7) < PASS: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so (test for warnings, line 16) < PASS: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so (test for excess errors) < PASS: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test for warnings, line ) < PASS: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test for warnings, line 5) < PASS: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test for warnings, line 9) < PASS: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test for warnings, line 14) < PASS: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test for excess errors) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 10) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 13) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 26) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 27) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 33) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 34) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 40) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 41) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 42) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 43) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 44) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 46) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for warnings, line 47) < PASS: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for excess errors) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 10) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 13) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 26) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 27) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 33) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 34) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 40) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 41) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 42) --- > FAIL: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so > (test for warnings, line ) > FAIL: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so > (test for warnings, line 7) > FAIL: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so > (test for warnings, line 7) > FAIL: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so > (test for warnings, line 16) > FAIL: g++.dg/plugin/attribute_plugin-test-1.C -fplugin=./attribute_plugin.so > (test for excess errors) > FAIL: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test > for warnings, line ) > FAIL: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test > for warnings, line 5) > FAIL: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test > for warnings, line 9) > FAIL: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test > for warnings, line 14) > FAIL: g++.dg/plugin/pragma_plugin-test-1.C -fplugin=./pragma_plugin.so (test > for excess errors) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 10) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 13) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 26) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 27) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 33) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 34) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 40) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 41) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 42) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 43) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 44) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 46) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > warnings, line 47) > FAIL: g++.dg/plugin/self-assign-test-1.C -fplugin=./selfassign.so (test for > excess errors) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 10) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 13) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 26) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 27) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 33) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 34) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 40) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 41) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 42) 14087,14089c14087,14089 < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 46) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for warnings, line 47) < PASS: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for excess errors) --- > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 46) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > warnings, line 47) > FAIL: g++.dg/plugin/self-assign-test-2.C -fplugin=./selfassign.so (test for > excess errors) 14103,14112c14103,14112 < PASS: g++.dg/plugin/self-assign-test-3.C -fplugin=./selfassign.so (test for excess errors) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for warnings, line 10) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for warnings, line 14) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for warnings, line 18) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for warnings, line 19) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for warnings, line 24) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for warnings, line 50) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for warnings, line 50) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for warnings, line 50) < PASS: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for excess errors) --- > FAIL: g++.dg/plugin/self-assign-test-3.C -fplugin=./selfassign.so (test for > excess errors) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > warnings, line 10) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > warnings, line 14) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > warnings, line 18) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > warnings, line 19) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > warnings, line 24) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > warnings, line 50) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > warnings, line 50) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > warnings, line 50) > FAIL: g++.dg/plugin/dumb-plugin-test-1.C -fplugin=./dumb_plugin.so (test for > excess errors) 22856c22856,22857 < # of expected passes 22565 --- > # of expected passes 22519 > # of unexpected failures 46 22859c22860 < /user/inria/fsf/bld-gcc-20/gcc/testsuite/g++/../../g++ version 4.5.0 20100120 (experimental) (GCC) --- > /user/inria/fsf/bld-gcc-cxx12/gcc/testsuite/g++/../../g++ version 4.5.0 > 20100120 (experimental) (GCC) gcc/testsuite/gcc/gcc.sum 1c1 < Test Run By amylaar on Wed Jan 20 12:06:43 2010 --- > Test Run By amylaar on Wed Jan 20 13:02:39 2010 6103,6110c6103,6110 < FAIL: gcc.c-torture/compile/limits-exprparen.c -O0 (test for excess errors) < FAIL: gcc.c-torture/compile/limits-exprparen.c -O1 (test for excess errors) < FAIL: gcc.c-torture/compile/limits-exprparen.c -O2 (test for excess errors) < FAIL: gcc.c-torture/compile/limits-exprparen.c -O3 -fomit-frame-pointer (test for excess errors) < FAIL: gcc.c-torture/compile/limits-exprparen.c -O3 -g (test for excess errors) < FAIL: gcc.c-torture/compile/limits-exprparen.c -Os (test for excess errors) < FAIL: gcc.c-torture/compile/limits-exprparen.c -O2 -flto (test for excess errors) < FAIL: gcc.c-torture/compile/limits-exprparen.c -O2 -fwhopr (test for excess errors) --- > PASS: gcc.c-torture/compile/limits-exprparen.c -O0 (test for excess errors) > PASS: gcc.c-torture/compile/limits-exprparen.c -O1 (test for excess errors) > PASS: gcc.c-torture/compile/limits-exprparen.c -O2 (test for excess errors) > PASS: gcc.c-torture/compile/limits-exprparen.c -O3 -fomit-frame-pointer > (test for excess errors) > PASS: gcc.c-torture/compile/limits-exprparen.c -O3 -g (test for excess > errors) > PASS: gcc.c-torture/compile/limits-exprparen.c -Os (test for excess errors) > PASS: gcc.c-torture/compile/limits-exprparen.c -O2 -flto (test for excess > errors) > PASS: gcc.c-torture/compile/limits-exprparen.c -O2 -fwhopr (test for excess > errors) 59135,59140c59135,59140 < PASS: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for warnings, line 15) < PASS: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for warnings, line 19) < PASS: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for warnings, line 20) < PASS: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for warnings, line 21) < PASS: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for warnings, line 22) < PASS: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for excess errors) --- > FAIL: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for > warnings, line 15) > FAIL: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for > warnings, line 19) > FAIL: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for > warnings, line 20) > FAIL: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for > warnings, line 21) > FAIL: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for > warnings, line 22) > FAIL: gcc.dg/plugin/self-assign-test-1.c -fplugin=./selfassign.so (test for > excess errors) 59146,59150c59146,59150 < PASS: gcc.dg/plugin/self-assign-test-2.c -fplugin=./selfassign.so (test for excess errors) < PASS: gcc.dg/plugin/ggcplug-test-1.c -fplugin=./ggcplug.so (test for excess errors) < PASS: gcc.dg/plugin/one_time-test-1.c -fplugin=./one_time_plugin.so (test for excess errors) < PASS: gcc.dg/plugin/start_unit-test-1.c -fplugin=./start_unit_plugin.so (test for excess errors) < PASS: gcc.dg/plugin/finish_unit-test-1.c -fplugin=./finish_unit_plugin.so (test for excess errors) --- > FAIL: gcc.dg/plugin/self-assign-test-2.c -fplugin=./selfassign.so (test for > excess errors) > FAIL: gcc.dg/plugin/ggcplug-test-1.c -fplugin=./ggcplug.so (test for excess > errors) > FAIL: gcc.dg/plugin/one_time-test-1.c -fplugin=./one_time_plugin.so (test for > excess errors) > FAIL: gcc.dg/plugin/start_unit-test-1.c -fplugin=./start_unit_plugin.so (test > for excess errors) > FAIL: gcc.dg/plugin/finish_unit-test-1.c -fplugin=./finish_unit_plugin.so > (test for excess errors) 66267c66267 < PASS: gcc.dg/tree-ssa/ldist-11.c scan-tree-dump-times ldist "distributed: split to 2 loops" 1 --- > FAIL: gcc.dg/tree-ssa/ldist-11.c scan-tree-dump-times ldist "distributed: > split to 2 loops" 1 66270c66270 < PASS: gcc.dg/tree-ssa/ldist-12.c scan-tree-dump-times ldist "distributed: split to 2 loops" 1 --- > FAIL: gcc.dg/tree-ssa/ldist-12.c scan-tree-dump-times ldist "distributed: > split to 2 loops" 1 66272c66272 < PASS: gcc.dg/tree-ssa/ldist-13.c scan-tree-dump ldist "Loop 1 distributed: split to 2 loops" --- > FAIL: gcc.dg/tree-ssa/ldist-13.c scan-tree-dump ldist "Loop 1 distributed: > split to 2 loops" 66274c66274 < PASS: gcc.dg/tree-ssa/ldist-14.c scan-tree-dump ldist "Loop 1 distributed: split to 2 loops" --- > FAIL: gcc.dg/tree-ssa/ldist-14.c scan-tree-dump ldist "Loop 1 distributed: > split to 2 loops" 72365,72366c72365,72366 < # of expected passes 71400 < # of unexpected failures 26 --- > # of expected passes 71393 > # of unexpected failures 33 72370c72370 < /user/inria/fsf/bld-gcc-20/gcc/xgcc version 4.5.0 20100120 (experimental) (GCC) --- > /user/inria/fsf/bld-gcc-cxx12/gcc/xgcc version 4.5.0 20100120 (experimental) > (GCC)