This is an automated email from the git hooks/post-receive script.
tcwg-buildslave pushed a change to branch linaro-local/ci/tcwg_kernel/gnu-master-arm-mainline-allnoconfig in repository toolchain/ci/gcc.
from 82033483fd7 PR90374 Zero width format specifiers. adds 07c86323a19 analyzer: prevent ICE on isnan (PR 93290) adds 92030203c1d Daily bump. adds e2947cfa2d1 PR93234 INQUIRE on pre-assigned files of ROUND and SIGN properties adds a22a86a18bd arm: fix rtl checking bootstrap (PR target/93312) adds 472ef1d34bb arm: Remove yet another unused variable. adds 49789fd0837 [C++ coroutines] Initial implementation. adds 7ebbff3acbe [libiberty] Update demangler to handle co_await operator. adds 5a715667bbb Reword a comment in varpool_node::ctor_useable_for_folding_p. adds 8118184c3e1 config.gcc <obsolete targets>: Add crisv32-*-* and cris-*-linux* adds 955e4e3b705 testsuite: Fix dg-message syntax. adds 93bb79abfcc AArch64: Fix unused variable warning breaking bootstrap. adds 84479e3a4ce Fix compilation of crtstuff.c when DEFAULT_USE_CXA_ATEXIT is false adds 463f6499447 libgcc: cris: config/cris/arit.c (DS): Apply attribute __fa [...] new dba33cb727d c++: Fix coroutines.cc build for nvptx-none target
The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference.
Summary of changes: gcc/ChangeLog | 62 +- gcc/DATESTAMP | 2 +- gcc/Makefile.in | 1 + gcc/analyzer/ChangeLog | 7 + gcc/analyzer/region-model.cc | 10 +- gcc/builtin-types.def | 5 + gcc/builtins.def | 9 + gcc/c-family/ChangeLog | 10 + gcc/c-family/c-common.c | 5 + gcc/c-family/c-common.h | 5 + gcc/c-family/c-cppbuiltin.c | 2 + gcc/c-family/c.opt | 4 + gcc/config.gcc | 2 + gcc/config/aarch64/aarch64-sve-builtins-base.cc | 2 +- gcc/config/arm/arm.c | 5 +- gcc/config/arm/vfp.md | 1 - gcc/coroutine-builtins.def | 53 + gcc/coroutine-passes.cc | 532 +++ gcc/cp/ChangeLog | 41 + gcc/cp/Make-lang.in | 2 +- gcc/cp/call.c | 20 + gcc/cp/config-lang.in | 2 +- gcc/cp/constexpr.c | 6 + gcc/cp/coroutines.cc | 3643 ++++++++++++++++++++ gcc/cp/cp-objcp-common.c | 4 + gcc/cp/cp-tree.def | 24 + gcc/cp/cp-tree.h | 19 +- gcc/cp/decl.c | 60 + gcc/cp/lex.c | 2 + gcc/cp/operators.def | 1 + gcc/cp/parser.c | 89 +- gcc/cp/pt.c | 21 + gcc/cp/tree.c | 31 + gcc/doc/analyzer.texi | 3 + gcc/doc/invoke.texi | 4 + gcc/function.h | 3 + gcc/internal-fn.c | 26 + gcc/internal-fn.def | 6 + gcc/passes.def | 2 + gcc/testsuite/ChangeLog | 135 + gcc/testsuite/c-c++-common/pr92833-4.c | 2 +- .../coroutines/co-await-syntax-00-needs-expr.C | 7 + .../coroutines/co-await-syntax-01-outside-fn.C | 5 + .../coroutines/co-await-syntax-02-outside-fn.C | 5 + .../g++.dg/coroutines/co-await-syntax-03-auto.C | 16 + .../coroutines/co-await-syntax-04-ctor-dtor.C | 8 + .../coroutines/co-await-syntax-05-constexpr.C | 12 + .../g++.dg/coroutines/co-await-syntax-06-main.C | 7 + .../g++.dg/coroutines/co-await-syntax-07-varargs.C | 14 + .../coroutines/co-await-syntax-08-lambda-auto.C | 19 + .../coroutines/co-return-syntax-01-outside-fn.C | 6 + .../coroutines/co-return-syntax-02-outside-fn.C | 5 + .../g++.dg/coroutines/co-return-syntax-03-auto.C | 12 + .../coroutines/co-return-syntax-04-ctor-dtor.C | 8 + .../coroutines/co-return-syntax-05-constexpr-fn.C | 12 + .../g++.dg/coroutines/co-return-syntax-06-main.C | 7 + .../g++.dg/coroutines/co-return-syntax-07-vararg.C | 14 + .../coroutines/co-return-syntax-08-bad-return.C | 43 + .../coroutines/co-return-syntax-09-lambda-auto.C | 19 + .../coroutines/co-yield-syntax-00-needs-expr.C | 7 + .../coroutines/co-yield-syntax-01-outside-fn.C | 6 + .../coroutines/co-yield-syntax-02-outside-fn.C | 6 + .../g++.dg/coroutines/co-yield-syntax-03-auto.C | 12 + .../coroutines/co-yield-syntax-04-ctor-dtor.C | 8 + .../coroutines/co-yield-syntax-05-constexpr.C | 12 + .../g++.dg/coroutines/co-yield-syntax-06-main.C | 7 + .../g++.dg/coroutines/co-yield-syntax-07-varargs.C | 14 + .../coroutines/co-yield-syntax-08-needs-expr.C | 37 + .../coroutines/co-yield-syntax-09-lambda-auto.C | 19 + gcc/testsuite/g++.dg/coroutines/coro-builtins.C | 17 + gcc/testsuite/g++.dg/coroutines/coro-missing-gro.C | 32 + .../g++.dg/coroutines/coro-missing-promise-yield.C | 33 + .../g++.dg/coroutines/coro-missing-ret-value.C | 34 + .../g++.dg/coroutines/coro-missing-ret-void.C | 34 + .../g++.dg/coroutines/coro-missing-ueh-1.C | 17 + .../g++.dg/coroutines/coro-missing-ueh-2.C | 18 + .../g++.dg/coroutines/coro-missing-ueh-3.C | 18 + gcc/testsuite/g++.dg/coroutines/coro-missing-ueh.h | 23 + gcc/testsuite/g++.dg/coroutines/coro-pre-proc.C | 9 + gcc/testsuite/g++.dg/coroutines/coro.h | 152 + .../g++.dg/coroutines/coro1-ret-int-yield-int.h | 133 + gcc/testsuite/g++.dg/coroutines/coroutines.exp | 50 + .../torture/alloc-00-gro-on-alloc-fail.C | 118 + .../coroutines/torture/alloc-01-overload-newdel.C | 120 + .../g++.dg/coroutines/torture/call-00-co-aw-arg.C | 73 + .../coroutines/torture/call-01-multiple-co-aw.C | 73 + .../g++.dg/coroutines/torture/call-02-temp-co-aw.C | 72 + .../coroutines/torture/call-03-temp-ref-co-aw.C | 72 + .../g++.dg/coroutines/torture/class-00-co-ret.C | 41 + .../coroutines/torture/class-01-co-ret-parm.C | 57 + .../coroutines/torture/class-02-templ-parm.C | 52 + .../torture/class-03-operator-templ-parm.C | 52 + .../g++.dg/coroutines/torture/class-04-lambda-1.C | 58 + .../torture/class-05-lambda-capture-copy-local.C | 59 + .../torture/class-06-lambda-capture-ref.C | 59 + .../coroutines/torture/co-await-00-trivial.C | 52 + .../coroutines/torture/co-await-01-with-value.C | 57 + .../g++.dg/coroutines/torture/co-await-02-xform.C | 58 + .../g++.dg/coroutines/torture/co-await-03-rhs-op.C | 58 + .../coroutines/torture/co-await-04-control-flow.C | 50 + .../g++.dg/coroutines/torture/co-await-05-loop.C | 51 + .../g++.dg/coroutines/torture/co-await-06-ovl.C | 65 + .../g++.dg/coroutines/torture/co-await-07-tmpl.C | 132 + .../coroutines/torture/co-await-08-cascade.C | 63 + .../g++.dg/coroutines/torture/co-await-09-pair.C | 57 + .../torture/co-await-10-template-fn-arg.C | 60 + .../coroutines/torture/co-await-11-forwarding.C | 43 + .../coroutines/torture/co-await-12-operator-2.C | 66 + .../coroutines/torture/co-await-13-return-ref.C | 58 + .../torture/co-ret-00-void-return-is-ready.C | 90 + .../torture/co-ret-01-void-return-is-suspend.C | 94 + .../torture/co-ret-03-different-GRO-type.C | 92 + .../coroutines/torture/co-ret-04-GRO-nontriv.C | 109 + .../coroutines/torture/co-ret-05-return-value.C | 38 + .../torture/co-ret-06-template-promise-val-1.C | 105 + .../coroutines/torture/co-ret-07-void-cast-expr.C | 44 + .../torture/co-ret-08-template-cast-ret.C | 104 + .../coroutines/torture/co-ret-09-bool-await-susp.C | 97 + .../torture/co-ret-10-expression-evaluates-once.C | 49 + .../coroutines/torture/co-ret-11-co-ret-co-await.C | 40 + .../torture/co-ret-12-co-ret-fun-co-await.C | 48 + .../coroutines/torture/co-ret-13-template-2.C | 56 + .../coroutines/torture/co-ret-14-template-3.C | 58 + .../g++.dg/coroutines/torture/co-yield-00-triv.C | 129 + .../g++.dg/coroutines/torture/co-yield-01-multi.C | 64 + .../g++.dg/coroutines/torture/co-yield-02-loop.C | 68 + .../g++.dg/coroutines/torture/co-yield-03-tmpl.C | 140 + .../torture/co-yield-04-complex-local-state.C | 162 + .../g++.dg/coroutines/torture/co-yield-05-co-aw.C | 55 + .../coroutines/torture/co-yield-06-fun-parm.C | 64 + .../torture/co-yield-07-template-fn-param.C | 71 + .../coroutines/torture/co-yield-08-more-refs.C | 68 + .../torture/co-yield-09-more-templ-refs.C | 68 + .../g++.dg/coroutines/torture/coro-torture.exp | 19 + .../g++.dg/coroutines/torture/exceptions-test-0.C | 167 + .../g++.dg/coroutines/torture/func-params-00.C | 42 + .../g++.dg/coroutines/torture/func-params-01.C | 45 + .../g++.dg/coroutines/torture/func-params-02.C | 50 + .../g++.dg/coroutines/torture/func-params-03.C | 49 + .../g++.dg/coroutines/torture/func-params-04.C | 57 + .../g++.dg/coroutines/torture/func-params-05.C | 57 + .../g++.dg/coroutines/torture/func-params-06.C | 47 + .../g++.dg/coroutines/torture/lambda-00-co-ret.C | 35 + .../coroutines/torture/lambda-01-co-ret-parm.C | 48 + .../coroutines/torture/lambda-02-co-yield-values.C | 64 + .../coroutines/torture/lambda-03-auto-parm-1.C | 46 + .../coroutines/torture/lambda-04-templ-parm.C | 47 + .../torture/lambda-05-capture-copy-local.C | 66 + .../coroutines/torture/lambda-06-multi-capture.C | 48 + .../coroutines/torture/lambda-07-multi-yield.C | 46 + .../coroutines/torture/lambda-08-co-ret-parm-ref.C | 59 + .../g++.dg/coroutines/torture/local-var-0.C | 37 + .../g++.dg/coroutines/torture/local-var-1.C | 37 + .../g++.dg/coroutines/torture/local-var-2.C | 50 + .../g++.dg/coroutines/torture/local-var-3.C | 65 + .../g++.dg/coroutines/torture/local-var-4.C | 75 + .../coroutines/torture/mid-suspend-destruction-0.C | 107 + gcc/testsuite/g++.dg/coroutines/torture/pr92933.C | 18 + gcc/testsuite/gcc.dg/analyzer/pr93290.c | 9 + gcc/testsuite/gfortran.dg/inquire_pre.f90 | 68 + gcc/tree-pass.h | 2 + gcc/varpool.c | 7 +- libgcc/ChangeLog | 10 + libgcc/config/cris/arit.c | 3 +- libgcc/crtstuff.c | 2 + libgfortran/ChangeLog | 6 + libgfortran/io/unit.c | 16 +- libiberty/cp-demangle.c | 1 + libiberty/testsuite/demangle-expected | 3 + libstdc++-v3/ChangeLog | 6 + libstdc++-v3/include/Makefile.am | 1 + libstdc++-v3/include/Makefile.in | 1 + libstdc++-v3/include/std/coroutine | 291 ++ 173 files changed, 11240 insertions(+), 36 deletions(-) create mode 100644 gcc/coroutine-builtins.def create mode 100644 gcc/coroutine-passes.cc create mode 100644 gcc/cp/coroutines.cc create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-00-needs-expr.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-01-outside-fn.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-02-outside-fn.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-03-auto.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-04-ctor-dtor.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-05-constexpr.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-06-main.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-07-varargs.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-await-syntax-08-lambda-auto.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-01-outside-fn.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-02-outside-fn.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-03-auto.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-04-ctor-dtor.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-05-constexpr-fn.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-06-main.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-07-vararg.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-08-bad-return.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-return-syntax-09-lambda-auto.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-00-needs-expr.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-01-outside-fn.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-02-outside-fn.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-03-auto.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-04-ctor-dtor.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-05-constexpr.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-06-main.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-07-varargs.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-08-needs-expr.C create mode 100644 gcc/testsuite/g++.dg/coroutines/co-yield-syntax-09-lambda-auto.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-builtins.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-missing-gro.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-missing-promise-yield.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-missing-ret-value.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-missing-ret-void.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-missing-ueh-1.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-missing-ueh-2.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-missing-ueh-3.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-missing-ueh.h create mode 100644 gcc/testsuite/g++.dg/coroutines/coro-pre-proc.C create mode 100644 gcc/testsuite/g++.dg/coroutines/coro.h create mode 100644 gcc/testsuite/g++.dg/coroutines/coro1-ret-int-yield-int.h create mode 100644 gcc/testsuite/g++.dg/coroutines/coroutines.exp create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/alloc-00-gro-on-alloc-fail.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/alloc-01-overload-newdel.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/call-00-co-aw-arg.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/call-01-multiple-co-aw.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/call-02-temp-co-aw.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/call-03-temp-ref-co-aw.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/class-00-co-ret.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/class-01-co-ret-parm.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/class-02-templ-parm.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/class-03-operator-templ-parm.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/class-04-lambda-1.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/class-05-lambda-capture [...] create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/class-06-lambda-capture-ref.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-00-trivial.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-01-with-value.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-02-xform.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-03-rhs-op.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-04-control-flow.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-05-loop.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-06-ovl.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-07-tmpl.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-08-cascade.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-09-pair.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-10-template-fn-arg.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-11-forwarding.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-12-operator-2.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-await-13-return-ref.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-00-void-return-i [...] create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-01-void-return-i [...] create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-03-different-GRO-type.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-04-GRO-nontriv.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-05-return-value.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-06-template-prom [...] create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-07-void-cast-expr.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-08-template-cast-ret.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-09-bool-await-susp.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-10-expression-ev [...] create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-11-co-ret-co-await.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-12-co-ret-fun-co [...] create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-13-template-2.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-ret-14-template-3.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-00-triv.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-01-multi.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-02-loop.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-03-tmpl.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-04-complex-loc [...] create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-05-co-aw.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-06-fun-parm.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-07-template-fn [...] create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-08-more-refs.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/co-yield-09-more-templ-refs.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/coro-torture.exp create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/exceptions-test-0.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/func-params-00.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/func-params-01.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/func-params-02.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/func-params-03.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/func-params-04.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/func-params-05.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/func-params-06.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-00-co-ret.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-01-co-ret-parm.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-02-co-yield-values.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-03-auto-parm-1.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-04-templ-parm.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-05-capture-copy-local.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-06-multi-capture.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-07-multi-yield.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/lambda-08-co-ret-parm-ref.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/local-var-0.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/local-var-1.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/local-var-2.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/local-var-3.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/local-var-4.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/mid-suspend-destruction-0.C create mode 100644 gcc/testsuite/g++.dg/coroutines/torture/pr92933.C create mode 100644 gcc/testsuite/gcc.dg/analyzer/pr93290.c create mode 100644 gcc/testsuite/gfortran.dg/inquire_pre.f90 create mode 100644 libstdc++-v3/include/std/coroutine