https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99576
--- Comment #10 from Iain Sandoe <iains at gcc dot gnu.org> --- (In reply to Adrian Perl from comment #9) > Thanks for the advice. > > I hope you meant __builtin_trap() as I can't find a __builtin_abort() > function. hmm .. I meant __builtin_abort () ... it is widely used in the testsuite for the reasons mentioned (try grepping for it in gcc/testsuite/gcc.dg to see some examples). > I have now written test applications for all relevant bug reports (99576, > 100611, 101976, 101367). great! > I also verified that it fixes 107288, but did not add a test as it requires > boost asio. The way to deal with cases like that is to take the .ii file (so that the dependencies on external headers are removed) and then reduce it to something usable as a test. Such reductions vary in difficulty (using tools like c-vise or creduce can help, sometimes it's possible to do it manually too). [I'm not asking you to do this right now, but mentioning that this is the approach used in such cases]. > Unfortunately I was wrong that the patch will fix 102217 and 101244. They > use similar examples but also the ternary operator, which still leads to an > invalid statement error when used in co_awaits. Yes, this is a different problem for which I have some work in progress, but not ready for publication just yet. > I will send the patch together with the testfiles as soon as the testsuite > has finished. Is it normal that it takes more than 6 hours to complete? depends on your hardware .. my fastest box takes about 2 hours, my slowest nearly a week :) .. so long as you are using "-jN" on the make line where N ≈ the number of threads your hardware will accommodate, that's about the best you can do. If you plan on working more with GCC there is also the option to get an account on the "compile farm" which gives you access to more platform versions and some quite powerful hardware.