Bin.Cheng <amker.ch...@gmail.com> wrote: > On Thu, Mar 5, 2020 at 10:18 PM Iain Sandoe <i...@sandoe.co.uk> wrote:
>> With current trunk + Bin’s two approved patches. >> >> I see no change in the testcase (lambda-09-capture-object.C) before / after >> the patch >> (it fails for me at -O0 only - in both cases). > > I tried exactly what you did, however, the result is different. I am a bit concerned that we get different results - yesterday I retested this on: Linux : x86_64-linux (cfarm gcc122) Darwin (x86_64-darwin16), with the same results on both platforms. 1) I applied the two testcases (note I have renamed lambda-09-capture-object.C => lambda-11-capture-object.C so that the test numbers are sequential). However, I have not changed the test in any other way. Native configuration is x86_64-pc-linux-gnu === g++ tests === Schedule of variations: unix/-m32 unix/-m64 Running target unix/-m32 Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target. Using /usr/share/dejagnu/config/unix.exp as generic interface file for target. Using /home/iains/gcc-master/src-patched/gcc/testsuite/config/default.exp as tool-and-target-specific interface file. Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/coroutines.exp ... FAIL: g++.dg/coroutines/co-await-syntax-10.C (internal compiler error) FAIL: g++.dg/coroutines/co-await-syntax-10.C (test for excess errors) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (test for excess errors) Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/torture/coro-torture.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (test for excess errors) Running target unix/-m64 Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target. Using /usr/share/dejagnu/config/unix.exp as generic interface file for target. Using /home/iains/gcc-master/src-patched/gcc/testsuite/config/default.exp as tool-and-target-specific interface file. Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/coroutines.exp ... FAIL: g++.dg/coroutines/co-await-syntax-10.C (internal compiler error) FAIL: g++.dg/coroutines/co-await-syntax-10.C (test for excess errors) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (test for excess errors) Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/torture/coro-torture.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (test for excess errors) ^^ so, this shows that both tests fail (co-await-syntax-10.C is expected) 2) I apply Bin’s patch (Pickup more CO_AWAIT_EXPR expanding cases) (which is approved) Native configuration is x86_64-pc-linux-gnu === g++ tests === Schedule of variations: unix/-m32 unix/-m64 Running target unix/-m32 Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target. Using /usr/share/dejagnu/config/unix.exp as generic interface file for target. Using /home/iains/gcc-master/src-patched/gcc/testsuite/config/default.exp as tool-and-target-specific interface file. Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/coroutines.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (test for excess errors) Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/torture/coro-torture.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (test for excess errors) Running target unix/-m64 Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target. Using /usr/share/dejagnu/config/unix.exp as generic interface file for target. Using /home/iains/gcc-master/src-patched/gcc/testsuite/config/default.exp as tool-and-target-specific interface file. Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/coroutines.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (test for excess errors) Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/torture/coro-torture.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (test for excess errors) ^^^ this shows that co-await-syntax-10.C is now OK (which is why I was happy to have this patch applied). 3) I apply JunMa’s patch (Do not strip cleanup_point when promote temporaries out of current stmt) Native configuration is x86_64-pc-linux-gnu === g++ tests === Schedule of variations: unix/-m32 unix/-m64 Running target unix/-m32 Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target. Using /usr/share/dejagnu/config/unix.exp as generic interface file for target. Using /home/iains/gcc-master/src-patched/gcc/testsuite/config/default.exp as tool-and-target-specific interface file. Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/coroutines.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (test for excess errors) Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/torture/coro-torture.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (test for excess errors) Running target unix/-m64 Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target. Using /usr/share/dejagnu/config/unix.exp as generic interface file for target. Using /home/iains/gcc-master/src-patched/gcc/testsuite/config/default.exp as tool-and-target-specific interface file. Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/coroutines.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C (test for excess errors) Running /home/iains/gcc-master/src-patched/gcc/testsuite/g++.dg/coroutines/torture/coro-torture.exp ... FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (internal compiler error) FAIL: g++.dg/coroutines/torture/lambda-11-capture-object.C -O0 (test for excess errors) ^^^ and there is no change to the result. ==== If it helps, I could push a branch to users/iains/ on the FSF git server with this sequence. thanks for your patience, Iain