[gcc r15-5914] Daily bump.

GCC Administrator gccadmin@gcc.gnu.org
Wed Dec 4 00:21:58 GMT 2024


https://gcc.gnu.org/g:f36cb8c79d3479cf8c9d5233f3f9cc26b2c5c457

commit r15-5914-gf36cb8c79d3479cf8c9d5233f3f9cc26b2c5c457
Author: GCC Administrator <gccadmin@gcc.gnu.org>
Date:   Wed Dec 4 00:21:20 2024 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog                | 192 +++++++++++++++++++++++++++++++++++++++++++
 gcc/DATESTAMP                |   2 +-
 gcc/c/ChangeLog              |   5 ++
 gcc/cp/ChangeLog             |   7 ++
 gcc/fortran/ChangeLog        |  37 +++++++++
 gcc/po/ChangeLog             |   4 +
 gcc/testsuite/ChangeLog      | 159 +++++++++++++++++++++++++++++++++++
 libcpp/ChangeLog             |  11 +++
 libgomp/ChangeLog            |   6 ++
 libstdc++-v3/ChangeLog       | 157 +++++++++++++++++++++++++++++++++++
 maintainer-scripts/ChangeLog |  13 +++
 11 files changed, 592 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6a26f87388a8..f42adebfd7d7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,195 @@
+2024-12-03  Georg-Johann Lay  <avr@gjlay.de>
+
+	* config/avr/avr.cc (avr_insn_location): New variable.
+	(avr_final_prescan_insn): Set avr_insn_location.
+	(avr_asm_final_postscan_insn): Unset avr_insn_location after last insn.
+	(avr_print_operand): Pass avr_insn_location to warning_at.
+
+2024-12-03  David Malcolm  <dmalcolm@redhat.com>
+
+	* doc/libgdiagnostics/conf.py: Remove "author".  Change
+	"copyright" field to the FSF.
+
+2024-12-03  Georg-Johann Lay  <avr@gjlay.de>
+
+	PR target/117726
+	* config/avr/avr-passes.cc (avr_split_shift_p)
+	[ASHIFT, LSHIFTRT]: Allow offsets of bitsize - 1.
+	(avr_split_shift4) [ASHIFT, LSHIFTRT]: Also split offset 31.
+	(avr_split_shift3) [ASHIFT, LSHIFTRT]: Also split offset 23.
+	(avr_split_shift2) [ASHIFT, LSHIFTRT]: Also split offset 15.
+
+2024-12-03  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/117874
+	* tree-vect-slp.cc (vect_build_slp_tree_2): Perform early
+	reassoc checks before eating into discovery limit.
+
+2024-12-03  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/117874
+	* tree-vectorizer.h (vec_info_shared::n_stmts): Remove.
+	(LOOP_VINFO_N_STMTS): Likewise.
+	* tree-vectorizer.cc (vec_info_shared::vec_info_shared): Adjust.
+	* tree-vect-loop.cc (vect_get_datarefs_in_loop): Do not
+	count stmts.
+	(vect_analyze_loop_2): Adjust.  Pass stmt_vec_info.length ()
+	to vect_analyze_slp as SLP tree size limit.
+
+2024-12-03  Georg-Johann Lay  <avr@gjlay.de>
+
+	PR target/117726
+	* config/avr/avr-passes.cc (avr_emit_shift): All 8-bit shifts with
+	an offset of 6 have 3-operand alternatives.
+	* config/avr/avr.cc (ashlqi3_out, lshrqi3_out) [case 6]:
+	Implement as 3-operand insn.
+	(avr_rtx_costs_1) [QImode, ASHIFT + LSHIFTRT]: Adjust
+	costs for offset of 6.
+	* config/avr/avr.md (*ashlqi3_split, *ashlqi3)
+	(*lshrqi3_split, *lshrqi3): Add "r,r,C06" alternative.
+
+2024-12-03  Claudio Bantaloukas  <claudio.bantaloukas@arm.com>
+
+	* config/aarch64/aarch64-option-extensions.def: (fp8): fix FEATURE_STRING.
+	(fp8fma, ssve-fp8fma): Likewise.
+	(fp8dot4, ssve-fp8dot4, fp8dot2, ssve-fp8dot2): Likewise.
+
+2024-12-03  Jakub Jelinek  <jakub@redhat.com>
+
+	PR tree-optimization/117420
+	* tree-ssanames.h (get_known_nonzero_bits): Declare.
+	* tree-ssanames.cc (get_nonzero_bits): New wrapper function.  Move old
+	definition to ...
+	(get_nonzero_bits_1): ... here, add static.  Change widest_int in
+	function comment to wide_int.
+	(get_known_nonzero_bits_1, get_known_nonzero_bits): New functions.
+	* match.pd (with_possible_nonzero_bits2): Rename to ...
+	(with_possible_nonzero_bits): ... this.  Guard the bit_and case with
+	#if GENERIC.  Change to a normal match predicate without parameters.
+	Rename the old with_possible_nonzero_bits match to ...
+	(with_possible_nonzero_bits_1): ... this.
+	(with_certain_nonzero_bits2): Remove.
+	(with_known_nonzero_bits_1, with_known_nonzero_bits): New match
+	predicates.
+	(X == C (or X & Z == Y | C) is impossible if ~nonzero(X) & C != 0):
+	Use with_known_nonzero_bits@0 instead of
+	(with_certain_nonzero_bits2 @1), use with_possible_nonzero_bits@0
+	instead of (with_possible_nonzero_bits2 @0) and
+	get_known_nonzero_bits (@1) instead of wi::to_wide (@1).
+
+2024-12-03  Jakub Jelinek  <jakub@redhat.com>
+
+	PR middle-end/117847
+	* gimple-lower-bitint.cc (gimple_lower_bitint) <case LROTATE_EXPR>:
+	Use m = (p - n) % p instead of m = p - n for the other shift count.
+
+2024-12-03  Tobias Burnus  <tburnus@baylibre.com>
+
+	* cgraphunit.cc (varpool_node::finalize_decl): Set alignment
+	based on OpenMP's 'omp allocate' attribute/directive.
+
+2024-12-03  Richard Sandiford  <richard.sandiford@arm.com>
+
+	* config/aarch64/aarch64-simd-pragma-builtins.def: Add a flags
+	field to each entry.
+	* config/aarch64/aarch64-builtins.cc: Update includes accordingly.
+	(aarch64_pragma_builtins_data): Add a flags field.
+	(aarch64_init_pragma_builtins): Use the flags field to add attributes
+	to the function declaration.
+
+2024-12-03  Saurabh Jha  <saurabh.jha@arm.com>
+	    Vladimir Miloserdov  <vladimir.miloserdov@arm.com>
+	    Richard Sandiford  <richard.sandiford@arm.com>
+
+	* config/aarch64/aarch64-builtins.cc
+	(aarch64_builtin_signatures): Add binary_lane.
+	(aarch64_fntype): Handle it.
+	(simd_types): Add 16-bit x2 types.
+	(aarch64_pragma_builtins_checker): New class.
+	(aarch64_general_check_builtin_call): Use it.
+	(aarch64_expand_pragma_builtin): Add support for lut unspecs.
+	* config/aarch64/aarch64-option-extensions.def
+	(AARCH64_OPT_EXTENSION): Add lut option.
+	* config/aarch64/aarch64-simd-pragma-builtins.def
+	(ENTRY_BINARY_LANE): Modify to use new ENTRY macro.
+	(ENTRY_TERNARY_VLUT8): Macro to declare lut intrinsics.
+	(ENTRY_TERNARY_VLUT16): Macro to declare lut intrinsics.
+	(REQUIRED_EXTENSIONS): Declare lut intrinsics.
+	* config/aarch64/aarch64-simd.md
+	(@aarch64_<vluti_uns_op><VLUT:mode><VB:mode>): Instruction
+	pattern for luti2 and luti4 intrinsics.
+	(@aarch64_lutx2<VLUT:mode><VB:mode>): Instruction pattern for
+	luti4x2 intrinsics.
+	* config/aarch64/aarch64.h
+	(TARGET_LUT): lut flag.
+	* config/aarch64/iterators.md: Iterators and attributes for lut.
+	* doc/invoke.texi: Document extension in AArch64 Options.
+
+2024-12-03  Saurabh Jha  <saurabh.jha@arm.com>
+	    Vladimir Miloserdov  <vladimir.miloserdov@arm.com>
+	    Richard Sandiford  <richard.sandiford@arm.com>
+
+	* config/aarch64/aarch64-builtins.cc
+	(ENTRY): Modify to add support of return and argument types.
+	(struct simd_type): New struct to declare types using mode and
+	qualifiers.
+	(struct aarch64_pragma_builtins_data): Replace mode with
+	the array of types to support return and argument types.
+	(aarch64_fntype): Modify to handle different signatures.
+	(aarch64_expand_pragma_builtin): Modify to handle different
+	signatures.
+	* config/aarch64/aarch64-simd-pragma-builtins.def
+	(ENTRY_VHSDF): Rename to ENTRY_BINARY_VHSDF.
+	(ENTRY_BINARY): New macro to declare binary intrinsics.
+	(ENTRY_BINARY_VHSDF): Remove signature argument and use
+	ENTRY_BINARY.
+
+2024-12-03  Saurabh Jha  <saurabh.jha@arm.com>
+	    Vladimir Miloserdov  <vladimir.miloserdov@arm.com>
+	    Richard Sandiford  <richard.sandiford@arm.com>
+
+	* config/aarch64/iterators.md: Reorder some declarations,
+	putting them under the associated heading comment.
+
+2024-12-03  Richard Sandiford  <richard.sandiford@arm.com>
+
+	* config/aarch64/aarch64-protos.h (aarch64_v64_mode): Declare.
+	(aarch64_vq_mode): Rename to...
+	(aarch64_v128_mode): ...this.
+	* config/aarch64/aarch64.cc (aarch64_v64_mode): New function,
+	split out from...
+	(aarch64_simd_container_mode): ...here.
+	(aarch64_vq_mode): Rename to...
+	(aarch64_v128_mode): ...this and update callers.
+	* config/aarch64/aarch64-sve-builtins-base.cc: Likewise update calls.
+
+2024-12-03  Richard Sandiford  <richard.sandiford@arm.com>
+
+	* config/aarch64/aarch64-sve-builtins.cc (report_non_ice)
+	(report_out_of_range, report_neither_nor, report_not_one_of)
+	(report_not_enum): Move to...
+	* config/aarch64/aarch64.cc: ...here, putting them in the aarch64
+	namespace, and...
+	* config/aarch64/aarch64-protos.h: ...declare them here.
+
+2024-12-03  Pan Li  <pan2.li@intel.com>
+
+	* match.pd: Refactor sorts of unsigned SAT_SUB match patterns.
+
+2024-12-03  Heiko Eißfeldt  <heiko@hexco.de>
+	    Jakub Jelinek  <jakub@redhat.com>
+
+	PR middle-end/114540
+	* varasm.cc (decode_reg_name_and_count): Use strtoul instead of atoi
+	and simplify verification that the whole asmspec contains just decimal
+	digits.
+
+2024-12-03  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/117874
+	* tree-vect-loop.cc (vect_analyze_loop_2): When non-SLP
+	analysis fails, try single-lane SLP.
+
 2024-12-02  David Malcolm  <dmalcolm@redhat.com>
 
 	* doc/libgdiagnostics/tutorial/01-hello-world.rst: Update linker
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index ba184185f0bd..74f6fd4e4e45 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20241203
+20241204
diff --git a/gcc/c/ChangeLog b/gcc/c/ChangeLog
index 6ecadeb6e2a8..037b4ac65dd2 100644
--- a/gcc/c/ChangeLog
+++ b/gcc/c/ChangeLog
@@ -1,3 +1,8 @@
+2024-12-03  Tobias Burnus  <tburnus@baylibre.com>
+
+	* c-parser.cc (c_parser_omp_allocate): Only check scope if
+	not in_omp_decl_attribute. Remove setting the alignment.
+
 2024-11-30  Martin Uecker  <uecker@tugraz.at>
 
 	PR c/117806
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index 59fbce8b9c85..0bcd7d1fc0ea 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,10 @@
+2024-12-03  Nina Ranns  <dinka.ranns@googlemail.com>
+
+	PR c++/117579
+	* parser.cc (cp_parser_statement): Replace assertion with a
+	conditional check that the statement containing a contract assert
+	is empty.
+
 2024-12-02  Patrick Palka  <ppalka@redhat.com>
 
 	* constraint.cc (resolve_concept_check): Remove.
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 2f4e4928de32..86b70c7d6a7e 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,40 @@
+2024-12-03  Paul Thomas  <pault@gcc.gnu.org>
+
+	PR fortran/102689
+	* trans-array.cc (get_array_ref_dim_for_loop_dim): Use the arg1
+	class container carried in ss->info as the seed for a lhs in
+	class valued transformational intrinsic calls that are not the
+	rhs of an assignment. Otherwise, the lhs variable expression is
+	taken from the loop chain. For this latter case, the _vptr and
+	_len fields are set.
+	(gfc_trans_create_temp_array): Use either the lhs expression
+	seeds to build a class variable that will take the returned
+	descriptor as its _data field. In the case that the arg1 expr.
+	is used, 'atmp' must be marked as unused, a typespec built with
+	the correct rank and the _vptr and _len fields set. The element
+	size is provided for the temporary allocation and to set the
+	descriptor span.
+	(gfc_array_init_size): When an intrinsic type scalar expr3 is
+	used in allocation of a class array, use its element size in
+	the descriptor dtype.
+	* trans-expr.cc (gfc_conv_class_to_class): Class valued
+	transformational intrinsics return the pointer to the array
+	descriptor as the _data field of a class temporary. Extract
+	directly and return the address of the class temporary.
+	(gfc_conv_procedure_call): store the expression for the first
+	argument of a class valued transformational intrinsic function
+	in the ss info class_container field. Later, use its type  as
+	the element type in the call to gfc_trans_create_temp_array.
+	(fcncall_realloc_result): Add a dtype argument and use it in
+	the descriptor, when available.
+	(gfc_trans_arrayfunc_assign): For class lhs, build a dtype with
+	the lhs rank and the rhs element size and use it in the call to
+	fcncall_realloc_result.
+
+2024-12-03  Tobias Burnus  <tburnus@baylibre.com>
+
+	* trans-decl.cc (gfc_finish_var_decl): Remove setting the alignment.
+
 2024-11-29  Andrew Pinski  <quic_apinski@quicinc.com>
 
 	PR fortran/117843
diff --git a/gcc/po/ChangeLog b/gcc/po/ChangeLog
index 5bd1cb14f3df..70a7e2319a89 100644
--- a/gcc/po/ChangeLog
+++ b/gcc/po/ChangeLog
@@ -1,3 +1,7 @@
+2024-12-03  Joseph Myers  <josmyers@redhat.com>
+
+	* zh_CN.po: Update.
+
 2024-09-19  Joseph Myers  <josmyers@redhat.com>
 
 	* zh_CN.po: Update.
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 22f492ecb776..3b267f85647f 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,162 @@
+2024-12-03  Georg-Johann Lay  <avr@gjlay.de>
+
+	PR testsuite/52641
+	PR testsuite/109123
+	PR testsuite/114661
+	PR testsuite/117828
+	PR testsuite/116481
+	PR testsuite/91069
+	* gcc.dg/Wuse-after-free-pr109123.c: Use size_t
+	instead of long unsigned int.
+	* gcc.dg/c23-tag-bitfields-1.c: Requires int32plus.
+	* gcc.dg/pr114661.c: Same.
+	* gcc.dg/pr117828.c: Same.
+	* gcc.dg/flex-array-counted-by-2.c: Use uintptr_t
+	instead of unsigned long.
+	* gcc.dg/pr116481.c: Same.
+	* gcc.dg/lto/tag-1_0.c: Use int32_t instead of int.
+	* gcc.dg/lto/tag-1_1.c: Use int16_t instead of short.
+	* gcc.dg/pr91069.c: Require double64.
+	* gcc.dg/type-convert-var.c: Require double64plus.
+
+2024-12-03  Georg-Johann Lay  <avr@gjlay.de>
+
+	* gcc.c-torture/execute/ieee/cdivchkd.x: New file.
+	* gcc.c-torture/execute/ieee/cdivchkf.x: New file.
+	* gcc.dg/flex-array-counted-by.c: Require wchar.
+	* gcc.dg/fold-copysign-1.c [avr]: Add -mdouble=64.
+
+2024-12-03  Georg-Johann Lay  <avr@gjlay.de>
+
+	* gcc.dg/Warray-bounds-33.c: Adjust for avr diagnostics.
+	* gcc.dg/pr56228.c: Same.
+	* gcc.dg/pr86124.c: Same.
+	* gcc.dg/pr94291.c: Same.
+	* gcc.dg/tree-ssa/pr82059.c: Same.
+
+2024-12-03  Jeff Law  <jlaw@ventanamicro.com>
+
+	* gcc.dg/crc-linux-1.c: Moved to from gcc.dg/torture.
+	* gcc.dg/crc-linux-2.c: Likewise.
+	* gcc.dg/crc-linux-4.c: Likewise.
+	* gcc.dg/crc-linux-5.c: Likewise.
+	* gcc.dg/crc-not-crc-15.c: Likewise.
+	* gcc.dg/crc-side-instr-1.c: Likewise.
+	* gcc.dg/crc-side-instr-2.c: Likewise.
+	* gcc.dg/crc-side-instr-3.c: Likewise.
+	* gcc.dg/crc-side-instr-4.c: Likewise.
+	* gcc.dg/crc-side-instr-5.c: Likewise.
+	* gcc.dg/crc-side-instr-6.c: Likewise.
+	* gcc.dg/crc-side-instr-7.c: Likewise.
+	* gcc.dg/crc-side-instr-8.c: Likewise.
+	* gcc.dg/crc-side-instr-9.c: Likewise.
+	* gcc.dg/crc-side-instr-10.c: Likewise.
+	* gcc.dg/crc-side-instr-11.c: Likewise.
+	* gcc.dg/crc-side-instr-12.c: Likewise.
+	* gcc.dg/crc-side-instr-13.c: Likewise.
+	* gcc.dg/crc-side-instr-14.c: Likewise.
+	* gcc.dg/crc-side-instr-15.c: Likewise.
+	* gcc.dg/crc-side-instr-16.c: Likewise.
+	* gcc.dg/crc-side-instr-17.c: Likewise.
+	* gcc.dg/torture/crc-linux-1.c: New file.
+	* gcc.dg/torture/crc-linux-2.c: New file.
+	* gcc.dg/torture/crc-linux-4.c: New file.
+	* gcc.dg/torture/crc-linux-5.c: New file.
+	* gcc.dg/torture/crc-not-crc-15.c: New file.
+	* gcc.dg/torture/crc-side-instr-1.c: New file.
+	* gcc.dg/torture/crc-side-instr-10.c: New file.
+	* gcc.dg/torture/crc-side-instr-11.c: New file.
+	* gcc.dg/torture/crc-side-instr-12.c: New file.
+	* gcc.dg/torture/crc-side-instr-13.c: New file.
+	* gcc.dg/torture/crc-side-instr-14.c: New file.
+	* gcc.dg/torture/crc-side-instr-15.c: New file.
+	* gcc.dg/torture/crc-side-instr-16.c: New file.
+	* gcc.dg/torture/crc-side-instr-17.c: New file.
+	* gcc.dg/torture/crc-side-instr-2.c: New file.
+	* gcc.dg/torture/crc-side-instr-3.c: New file.
+	* gcc.dg/torture/crc-side-instr-4.c: New file.
+	* gcc.dg/torture/crc-side-instr-5.c: New file.
+	* gcc.dg/torture/crc-side-instr-6.c: New file.
+	* gcc.dg/torture/crc-side-instr-7.c: New file.
+	* gcc.dg/torture/crc-side-instr-8.c: New file.
+	* gcc.dg/torture/crc-side-instr-9.c: New file.
+
+2024-12-03  Nina Ranns  <dinka.ranns@googlemail.com>
+
+	PR c++/117579
+	* g++.dg/contracts/pr117579.C: New test.
+
+2024-12-03  Edwin Lu  <ewlu@rivosinc.com>
+
+	* gcc.target/riscv/crc-builtin-zbc32.c: Fix selector.
+	* gcc.target/riscv/crc-builtin-zbc64.c: Ditto.
+
+2024-12-03  Paul Thomas  <pault@gcc.gnu.org>
+
+	PR fortran/102689
+	* gfortran.dg/class_transformational_1.f90: New test for class-
+	valued reshape.
+	* gfortran.dg/class_transformational_2.f90: New test for other
+	class_valued transformational intrinsics.
+
+2024-12-03  Joseph Myers  <josmyers@redhat.com>
+
+	PR c/117162
+	* gcc.dg/cpp/c17-ucn-1.c, gcc.dg/cpp/c17-ucn-2.c,
+	gcc.dg/cpp/c17-ucn-3.c, gcc.dg/cpp/c17-ucn-4.c,
+	gcc.dg/cpp/c23-ucn-2.c, gcc.dg/cpp/c23-ucnid-2.c: New tests.
+	* c-c++-common/cpp/delimited-escape-seq-3.c,
+	c-c++-common/cpp/named-universal-char-escape-3.c,
+	gcc.dg/cpp/c23-ucn-1.c, gcc.dg/cpp/c2y-delimited-escape-seq-3.c:
+	Update expected messages
+	* gcc.dg/cpp/ucs.c: Use -pedantic-errors.  Update expected
+	messages.
+
+2024-12-03  Jakub Jelinek  <jakub@redhat.com>
+
+	PR tree-optimization/117420
+	* gcc.dg/tree-ssa/pr117420.c: New test.
+
+2024-12-03  Jakub Jelinek  <jakub@redhat.com>
+
+	PR middle-end/117847
+	* gcc.dg/torture/bitint-75.c: New test.
+
+2024-12-03  Tobias Burnus  <tburnus@baylibre.com>
+
+	* c-c++-common/gomp/allocate-18.c: Check that alignof is unaffected
+	by 'omp allocate'.
+	* c-c++-common/gomp/allocate-19.c: Likewise.
+
+2024-12-03  Saurabh Jha  <saurabh.jha@arm.com>
+	    Vladimir Miloserdov  <vladimir.miloserdov@arm.com>
+	    Richard Sandiford  <richard.sandiford@arm.com>
+
+	* gcc.target/aarch64/simd/lut-incorrect-range.c: New test.
+	* gcc.target/aarch64/simd/lut-no-flag.c: New test.
+	* gcc.target/aarch64/simd/lut.c: New test.
+
+2024-12-03  Pan Li  <pan2.li@intel.com>
+
+	* gcc.target/riscv/rvv/rvv.exp: Fix the incorrect optimization
+	options passing to testcases.
+
+2024-12-03  Heiko Eißfeldt  <heiko@hexco.de>
+	    Jakub Jelinek  <jakub@redhat.com>
+
+	PR middle-end/114540
+	* gcc.dg/pr114540.c: New test.
+
+2024-12-03  Richard Biener  <rguenther@suse.de>
+
+	PR tree-optimization/117874
+	* gcc.dg/vect/pr117874.c: New testcase.
+
+2024-12-03  Pan Li  <pan2.li@intel.com>
+
+	* gcc.target/riscv/rvv/rvv.exp: Fix the incorrect optimization
+	options passing to testcases.
+
 2024-12-02  Jakub Jelinek  <jakub@redhat.com>
 
 	* g++.target/aarch64/pr94515-2.C: Add newline at the end of the file.
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index ef9208060e78..5be675df1573 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,14 @@
+2024-12-03  Joseph Myers  <josmyers@redhat.com>
+
+	PR c/117162
+	* include/cpplib.h (struct cpp_options): Add low_ucns.
+	* init.cc (struct lang_flags, lang_defaults): Add low_ucns.
+	(cpp_set_lang): Set low_ucns
+	* charset.cc (_cpp_valid_ucn): For C, allow UCNs below 0xa0
+	outside identifiers, with a pedwarn if pedantic before C23 or a
+	warning with -Wc11-c23-compat.  Do not allow \u0024 in identifiers
+	for C23.
+
 2024-11-28  David Malcolm  <dmalcolm@redhat.com>
 
 	PR c/104896
diff --git a/libgomp/ChangeLog b/libgomp/ChangeLog
index b09e42356eb8..336399e516b0 100644
--- a/libgomp/ChangeLog
+++ b/libgomp/ChangeLog
@@ -1,3 +1,9 @@
+2024-12-03  Tobias Burnus  <tburnus@baylibre.com>
+
+	* libgomp.texi (Memory allocation): Mention (non-)effect of 'align'
+	on _Alignof.
+	* testsuite/libgomp.c/allocate-7.c: New test.
+
 2024-11-28  Thomas Schwinge  <tschwinge@baylibre.com>
 
 	* testsuite/libgomp.oacc-c-c++-common/acc_get_property-gcn.c
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index edd04d23e962..e20517c36845 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,160 @@
+2024-12-03  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/108236
+	* include/pstl/glue_numeric_impl.h (exclusive_scan): Pass __init
+	as rvalue.
+	* include/pstl/numeric_impl.h (__brick_transform_scan): Do not
+	write through __result until after reading through __first. Move
+	__init into return value.
+	(__pattern_transform_scan): Pass __init as rvalue.
+	* include/std/numeric (exclusive_scan): Move construct instead
+	of copy constructing.
+	* testsuite/26_numerics/exclusive_scan/2.cc: New test.
+	* testsuite/26_numerics/pstl/numeric_ops/108236.cc: New test.
+
+2024-12-03  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/bits/alloc_traits.h (__do_alloc_on_copy): Remove.
+	(__do_alloc_on_move __do_alloc_on_swap): Remove.
+	(__alloc_on_copy, __alloc_on_move, __alloc_on_swap): Use if
+	constexpr.
+
+2024-12-03  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/57272
+	* include/bits/forward_list.h (_GLIBCXX_USE_ALLOC_PTR_FOR_LIST):
+	Define.
+	(_Fwd_list_node_base::_M_base_ptr): New member functions.
+	(_Fwd_list_node::_M_node_ptr): New member function.
+	(_Fwd_list_iterator, _Fwd_list_const_iterator): Make internal
+	member functions and data member private. Declare forward_list
+	and _Fwd_list_base as friends.
+	(__fwdlist::_Node_base, __fwdlist::_Node, __fwdlist::_Iterator):
+	New class templates.
+	(__fwdlist::_Node_traits): New class template.
+	(_Fwd_list_base): Use _Node_traits to get types. Use _Base_ptr
+	instad of _Fwd_list_node_base*. Use _M_base_ptr() instead of
+	taking address of head node.
+	(forward_list): Likewise.
+	(_Fwd_list_base::_M_get_node): Do not define for versioned
+	namespace.
+	(_Fwd_list_base::_M_put_node): Only convert pointer if needed.
+	(_Fwd_list_base::_M_create_node): Use __allocate_guarded_obj.
+	(_Fwd_list_base::_M_destroy_node): New member function.
+	* include/bits/forward_list.tcc (_Fwd_list_base::_M_insert_after)
+	(forward_list::_M_splice_after, forward_list::insert_after): Use
+	const_iterator::_M_const_cast() instead of casting pointers.
+	(_Fwd_list_base::_M_erase_after): Use _M_destroy_node.
+	(forward_list::remove, forward_list::remove_if): Only do
+	downcasts when accessing the value.
+	(forward_list::sort): Likewise.
+	* testsuite/23_containers/forward_list/capacity/1.cc: Check
+	max_size for new node type.
+	* testsuite/23_containers/forward_list/capacity/node_sizes.cc:
+	New test.
+	* testsuite/23_containers/forward_list/requirements/explicit_instantiation/alloc_ptr.cc:
+	New test.
+	* testsuite/23_containers/forward_list/requirements/explicit_instantiation/alloc_ptr_ignored.cc:
+	New test.
+	* testsuite/23_containers/forward_list/requirements/completeness.cc: New file.
+
+2024-12-03  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/57272
+	PR libstdc++/110952
+	* include/bits/allocated_ptr.h (__allocated_ptr::get): Add
+	const.
+	(__allocated_ptr::operator bool, __allocated_ptr::release): New
+	member functions.
+	(__allocate_guarded): Add inline.
+	(__allocated_obj): New class template.
+	(__allocate_guarded_obj): New function template.
+	* include/bits/list.tcc (_List_base::_M_clear()): Replace uses
+	of raw pointers. Use _M_destroy_node.
+	(list::emplace, list::insert): Likewise.
+	(list::sort): Adjust check for 0 or 1 wsize. Use template
+	argument list for _Scratch_list.
+	* include/bits/stl_list.h (_GLIBCXX_USE_ALLOC_PTR_FOR_LIST):
+	Define.
+	(_List_node_base::_Base_ptr): New typedef.
+	(_List_node_base::_M_base): New member functions.
+	(_List_node_header::_M_base): Make public and add
+	using-declaration for base class overload.
+	(__list::_Node_traits, __list::_Node_base)
+	(__list::_Node_header, __list::_Node, __list::_Iterator): New
+	class templates.
+	(_Scratch_list): Turn class into class template. Use _Base_ptr
+	typedef instead of _List_node_base*.
+	(_List_node::_Node_ptr): New typedef.
+	(_List_node::_M_node_ptr): New member function.
+	(_List_base, _List_impl): Use _Node_traits to get node types.
+	(_List_base::_M_put_node): Convert to fancy pointer if needed.
+	(_List_base::_M_destroy_node): New member function.
+	(_List_base(_List_base&&, _Node_alloc_type&&)): Use if constexpr
+	to make function a no-op for fancy pointers.
+	(_List_base::_S_distance, _List_base::_M_distance)
+	(_List_base::_M_node_count): Likewise.
+	(list): Use _Node_traits to get iterator, node and pointer
+	types.
+	(list::_M_create_node): Use _Node_ptr typedef instead of _Node*.
+	Use __allocate_guarded_obj instead of _M_get_node.
+	(list::end, list::cend, list::empty): Use node header's
+	_M_base() function instead of taking its address.
+	(list::swap): Use _Node_traits to get node base type.
+	(list::_M_create_node, list::_M_insert): Use _Node_ptr instead
+	of _Node*.
+	(list::_M_erase): Likewise. Use _M_destroy_node.
+	(__distance): Overload for __list::_Iterator.
+	(_Node_base::swap, _Node_base::_M_transfer): Define non-inline
+	member functions of class templates.
+	(_Node_header::_M_reverse): Likewise.
+	* testsuite/23_containers/list/capacity/29134.cc: Check max_size
+	for allocator of new node type.
+	* testsuite/23_containers/list/capacity/node_sizes.cc: New test.
+	* testsuite/23_containers/list/requirements/explicit_instantiation/alloc_ptr.cc:
+	New test.
+	* testsuite/23_containers/list/requirements/explicit_instantiation/alloc_ptr_ignored.cc:
+	New test.
+	* testsuite/23_containers/list/requirements/completeness.cc: New file.
+
+2024-12-03  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/bits/stl_list.h (_List_iterator): Remove _Self typedef
+	and just use injected-class-name instead.
+	(_List_const_iterator): Likewise.
+
+2024-12-03  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/bits/stl_list.h (_List_size): New struct.
+	(_List_node_header): Replace _M_size member with _List_size base
+	class.
+	(_List_node_header(_List_node_header&&)): Replace explicit uses
+	of _M_size with initializing the base.
+	(_List_node_header::_M_init): Likewise.
+	(_List_base::_S_distance, _List_base::_M_distance)
+	(_List_base::_M_node_count): Move to end of class body and add
+	comment.
+	(list::_S_distance, list::_M_node_count): Likewise.
+	(list::size): Inline _M_node_count effects to here.
+	(list::splice(iterator, list&, iterator, iterator)): Use #if and
+	call std::distance instead of _S_distance.
+
+2024-12-03  Jonathan Wakely  <jwakely@redhat.com>
+
+	* include/bits/stl_bvector.h (vector(const allocator_type&)):
+	Add noexcept, as per LWG 3778.
+	* testsuite/23_containers/vector/bool/cons/lwg3778.cc: New test.
+
+2024-12-03  Jonathan Wakely  <jwakely@redhat.com>
+
+	PR libstdc++/117889
+	PR libstdc++/117858
+	* include/std/optional (optional(const optional<U>&)): Fix copy
+	and paste error in constraints.
+	(optional(optional<U>&&)): Likewise.
+	* testsuite/20_util/optional/assignment/117858.cc: Move to ...
+	* testsuite/20_util/optional/cons/117858.cc: New test.
+
 2024-12-02  Jonathan Wakely  <jwakely@redhat.com>
 
 	* include/bits/stl_construct.h (_Destroy(FwdIter, FwdIter)): Use
diff --git a/maintainer-scripts/ChangeLog b/maintainer-scripts/ChangeLog
index 943e097bb6bf..4450b2ae1b6f 100644
--- a/maintainer-scripts/ChangeLog
+++ b/maintainer-scripts/ChangeLog
@@ -1,3 +1,16 @@
+2024-12-03  David Malcolm  <dmalcolm@redhat.com>
+
+	PR web/117883
+	* update_web_docs_git: Introduce SPHINX_VENV to make
+	it easier to test the script.  Add the libgdiagnostics docs
+	and testsuite to the files to be preserved.  Use sphinx to build
+	the libgdiagnostics docs as HTML.  Copy them into $DOCSDIR.
+
+2024-12-03  David Malcolm  <dmalcolm@redhat.com>
+
+	* update_web_docs_git: Add the jit testsuite to the files to
+	be preserved, since this is used by the jit docs.
+
 2024-07-19  Richard Biener  <rguenther@suse.de>
 
 	* crontab: Remove entry for gcc-11 branch.


More information about the Libstdc++-cvs mailing list