[Bug regression/53953] New: [4.7/4.8 Regression]: g++.dg/cpp0x/lambda/lambda-ice2.C (warnings and errors not matching)
hp at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Jul 13 13:43:00 GMT 2012
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53953
Bug #: 53953
Summary: [4.7/4.8 Regression]:
g++.dg/cpp0x/lambda/lambda-ice2.C (warnings and errors
not matching)
Classification: Unclassified
Product: gcc
Version: 4.7.2
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: regression
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: hp@gcc.gnu.org
CC: jason@gcc.gnu.org, paolo@gcc.gnu.org
Host: x86_64-unknown-linux-gnu
Target: cris-axis-elf
This test previously passed, now it fails, at least for cris-elf, but most
likely on multiple targets...but from gcc-testresults, I see that's not so.
Thankfully, for some test-runs, it can be seen for i686-pc-linux-gnu, so it
might be in some part be specific to some ILP32 targets.
(Odd detail: I see it in
http://gcc.gnu.org/ml/gcc-testresults/2012-07/msg00915.html but not in
http://gcc.gnu.org/ml/gcc-testresults/2012-07/msg00920.html and I can't spot a
system-specific difference between those runs - they seem to be identical
overlapping autotesters.)
A patch in the revision range (last_known_working:first_known_failing)
189391:189401
exposed or caused this regression. Since then it fails as follows:
Running /tmp/hpautotest-gcc1/gcc/gcc/testsuite/g++.dg/dg.exp ...
...
FAIL: g++.dg/cpp0x/lambda/lambda-ice2.C (test for warnings, line 12)
FAIL: g++.dg/cpp0x/lambda/lambda-ice2.C candidate explanation (test for errors,
line 5)
FAIL: g++.dg/cpp0x/lambda/lambda-ice2.C (test for excess errors)
In g++.log:
Executing on host: /tmp/gccobj/gcc/testsuite/g++/../../g++
-B/tmp/gccobj/gcc/testsuite/g++/../../
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C
-fno-diagnostics-show-caret -nostdinc++
-I/tmp/gccobj/cris-elf/libstdc++-v3/include/cris-elf
-I/tmp/gccobj/cris-elf/libstdc++-v3/include
-I/tmp/gccsrc/libstdc++-v3/libsupc++
-I/tmp/gccsrc/libstdc++-v3/include/backward
-I/tmp/gccsrc/libstdc++-v3/testsuite/util -fmessage-length=0 -std=c++0x -S
-isystem /tmp/gccobj/cris-elf/./newlib/targ-include -isystem
/tmp/gccsrc/newlib/libc/include -o lambda-ice2.s (timeout = 300)
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C: In function 'int
main()':
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:14:8: error: no
matching function for call to 'run(main()::<lambda()>&)'
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:14:8: note:
candidate is:
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: note:
template<class F> decltype (F()) run(F)
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: note:
template argument deduction/substitution failed:
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C: In substitution of
'template<class F> decltype (F()) run(F) [with F = main()::<lambda()>]':
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:14:8: required
from here
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: error: no
matching function for call to 'main()::<lambda()>::__lambda0()'
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: note:
candidates are:
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:12:13: note:
constexpr main()::<lambda()>::<lambda>(const main()::<lambda()>&)
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:12:13: note:
candidate expects 1 argument, 0 provided
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:12:13: note:
constexpr main()::<lambda()>::<lambda>(main()::<lambda()>&&)
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:12:13: note:
candidate expects 1 argument, 0 provided
compiler exited with status 1
output is:
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C: In function 'int
main()':
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:14:8: error: no
matching function for call to 'run(main()::<lambda()>&)'
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:14:8: note:
candidate is:
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: note:
template<class F> decltype (F()) run(F)
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: note:
template argument deduction/substitution failed:
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C: In substitution of
'template<class F> decltype (F()) run(F) [with F = main()::<lambda()>]':
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:14:8: required
from here
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: error: no
matching function for call to 'main()::<lambda()>::__lambda0()'
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: note:
candidates are:
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:12:13: note:
constexpr main()::<lambda()>::<lambda>(const main()::<lambda()>&)
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:12:13: note:
candidate expects 1 argument, 0 provided
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:12:13: note:
constexpr main()::<lambda()>::<lambda>(main()::<lambda()>&&)
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:12:13: note:
candidate expects 1 argument, 0 provided
PASS: g++.dg/cpp0x/lambda/lambda-ice2.C (test for warnings, line 5)
FAIL: g++.dg/cpp0x/lambda/lambda-ice2.C (test for warnings, line 12)
PASS: g++.dg/cpp0x/lambda/lambda-ice2.C (test for errors, line 14)
PASS: g++.dg/cpp0x/lambda/lambda-ice2.C candidate note (test for warnings, line
14)
FAIL: g++.dg/cpp0x/lambda/lambda-ice2.C candidate explanation (test for errors,
line 5)
FAIL: g++.dg/cpp0x/lambda/lambda-ice2.C (test for excess errors)
Excess errors:
/tmp/gccsrc/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-ice2.C:5:15: error: no
matching function for call to 'main()::<lambda()>::__lambda0()'
(objpath and srcpath edited for brevity)
A patch carrying over this regression has been committed to the 4.7 branch with
a commit in the range 189412:189457. That branch now fails similarly.
Author and committer for matching revision ranges CC:ed.
More information about the Gcc-bugs
mailing list