aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGCC Administrator <gccadmin@gcc.gnu.org>2024-08-25 00:17:02 +0000
committerGCC Administrator <gccadmin@gcc.gnu.org>2024-08-25 00:17:02 +0000
commitf23d4cea8682d84fd533a8ca57b099311e056ce0 (patch)
tree21818f944a4005d1a5650c96b20c651c9527e1ab
parentecc999b0224db06c1a7d8a4128bfa2ed162e2a61 (diff)
downloadgcc-f23d4cea8682d84fd533a8ca57b099311e056ce0.zip
gcc-f23d4cea8682d84fd533a8ca57b099311e056ce0.tar.gz
gcc-f23d4cea8682d84fd533a8ca57b099311e056ce0.tar.bz2
Daily bump.
-rw-r--r--gcc/DATESTAMP2
-rw-r--r--gcc/cp/ChangeLog106
-rw-r--r--gcc/m2/ChangeLog14
-rw-r--r--gcc/testsuite/ChangeLog57
4 files changed, 178 insertions, 1 deletions
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index 8df5150..928d43e 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20240824
+20240825
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 12b8c22..1c5d533 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,109 @@
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/110635
+ * coroutines.cc
+ (cp_coroutine_transform::wrap_original_function_body): Look through
+ initial await target expressions to find the actual co_await_expr
+ that we need to update.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/102051
+ * coroutines.cc
+ (cp_coroutine_transform::build_ramp_function): Handle
+ "throwing_cleanup" here instead of ...
+ (cp_coroutine_transform::apply_transforms): ... here.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/115908
+ * coroutines.cc
+ (cp_coroutine_transform::build_ramp_function): Rework the return
+ value initialisation to initialise the return slot always from
+ get_return_object, even if that implies carrying out conversions
+ to do so.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/109682
+ * coroutines.cc
+ (cp_coroutine_transform::build_ramp_function): Allow for cases where
+ get_return_on_allocation_fail has a type convertible to the ramp
+ return type.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/100476
+ * coroutines.cc
+ (cp_coroutine_transform::build_ramp_function): Remove special
+ handling of void get_return_object expressions.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/113773
+ * coroutines.cc
+ (cp_coroutine_transform::build_ramp_function): Only cleanup the
+ frame state on exceptions that occur before the initial await
+ resume has begun.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ * call.cc (build_op_delete_call_1): Renamed and added a param
+ to allow the caller to prioritize two argument usual deleters.
+ (build_op_delete_call): New.
+ (build_coroutine_op_delete_call): New.
+ * coroutines.cc (coro_get_frame_dtor): Rename...
+ (build_coroutine_frame_delete_expr):... to this; simplify to
+ use build_op_delete_call for all cases.
+ (build_actor_fn): Use revised frame delete function.
+ (build_coroutine_frame_alloc_expr): New.
+ (cp_coroutine_transform::complete_ramp_function): Rename...
+ (cp_coroutine_transform::build_ramp_function): ... to this.
+ Reorder code to carry out checks for prerequisites before the
+ codegen. Split out the allocation/delete code.
+ (cp_coroutine_transform::apply_transforms): Use revised name.
+ * coroutines.h: Rename function.
+ * cp-tree.h (build_coroutine_op_delete_call): New.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+ Arsen Arsenović <arsen@aarsen.me>
+
+ * coroutines.cc (struct suspend_point_info, struct param_info,
+ struct local_var_info, struct susp_frame_data,
+ struct local_vars_frame_data): Move to coroutines.h.
+ (build_actor_fn): Use start/finish function APIs.
+ (build_destroy_fn): Likewise.
+ (coro_build_actor_or_destroy_function): No longer mark the
+ actor / destroyer as DECL_COROUTINE_P.
+ (coro_rewrite_function_body): Use class members.
+ (cp_coroutine_transform::wrap_original_function_body): Likewise.
+ (build_ramp_function): Replace by...
+ (cp_coroutine_transform::complete_ramp_function): ...this.
+ (cp_coroutine_transform::cp_coroutine_transform): New.
+ (cp_coroutine_transform::~cp_coroutine_transform): New
+ (morph_fn_to_coro): Replace by...
+ (cp_coroutine_transform::apply_transforms): ...this.
+ (cp_coroutine_transform::finish_transforms): New.
+ * cp-tree.h (morph_fn_to_coro): Remove.
+ * decl.cc (emit_coro_helper): Remove.
+ (finish_function): Revise handling of coroutine transforms.
+ * coroutines.h: New file.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ * coroutines.cc (build_actor_fn): Arrange to apply any
+ required parameter copy DTORs in reverse order to their
+ creation.
+ (coro_rewrite_function_body): Handle revised param uses.
+ (morph_fn_to_coro): Split the ramp function completion
+ into a separate function.
+ (build_ramp_function): New.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ * coroutines.cc (build_co_await): Simplify checks for the cases that
+ we need to materialise an awaiter.
+
2024-08-21 Iain Sandoe <iain@sandoe.co.uk>
* coroutines.cc (split_coroutine_body_from_ramp): Check
diff --git a/gcc/m2/ChangeLog b/gcc/m2/ChangeLog
index 7d577d2..382f8a8 100644
--- a/gcc/m2/ChangeLog
+++ b/gcc/m2/ChangeLog
@@ -1,3 +1,17 @@
+2024-08-24 Gaius Mulley <gaiusmod2@gmail.com>
+
+ * gm2-libs/libc.def (atof): Export unqualified.
+ (atoi): Ditto.
+ (atol): Ditto.
+ (atoll): Ditto.
+ (strtod): Ditto.
+ (strtof): Ditto.
+ (strtold): Ditto.
+ (strtol): Ditto.
+ (strtoll): Ditto.
+ (strtoul): Ditto.
+ (strtoull): Ditto.
+
2024-08-16 Gaius Mulley <gaiusmod2@gmail.com>
* gm2-libs-iso/StdChans.mod (in): Rename to ...
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index a74c9c8..3f839bf 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,60 @@
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/110635
+ * g++.dg/coroutines/pr110635.C: New test.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/102051
+ * g++.dg/coroutines/pr102051.C: New test.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/115908
+ * g++.dg/coroutines/pr115908.C: New test.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/109682
+ * g++.dg/coroutines/pr109682.C: New test.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/100476
+ * g++.dg/coroutines/coro-bad-gro-01-void-gro-non-class-coro.C:
+ Adjust expected diagnostic.
+ * g++.dg/coroutines/pr102489.C: Avoid void get_return_object.
+ * g++.dg/coroutines/pr103868.C: Likewise.
+ * g++.dg/coroutines/pr94879-folly-1.C: Likewise.
+ * g++.dg/coroutines/pr94883-folly-2.C: Likewise.
+ * g++.dg/coroutines/pr96749-2.C: Likewise.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ PR c++/113773
+ * g++.dg/coroutines/torture/pr113773.C: New test.
+
+2024-08-24 Iain Sandoe <iain@sandoe.co.uk>
+
+ * g++.dg/coroutines/coro-bad-alloc-01-bad-op-del.C: Use revised
+ diagnostics.
+ * g++.dg/coroutines/coro-bad-gro-00-class-gro-scalar-return.C:
+ Likewise.
+ * g++.dg/coroutines/coro-bad-gro-01-void-gro-non-class-coro.C:
+ Likewise.
+ * g++.dg/coroutines/coro-bad-grooaf-00-static.C: Likewise.
+ * g++.dg/coroutines/ramp-return-b.C: Likewise.
+
+2024-08-24 Simon Martin <simon@nasilyan.com>
+
+ PR c++/113746
+ * g++.dg/parse/crash76.C: New test.
+
+2024-08-24 Georg-Johann Lay <avr@gjlay.de>
+
+ * gcc.dg/torture/pr115929-2.c: Add dg-require-effective-target scheduling.
+ * gcc.dg/torture/pr116343.c: Same.
+
2024-08-23 Manolis Tsamis <manolis.tsamis@vrull.eu>
PR rtl-optimization/116372