https://gcc.gnu.org/g:69b4da776140629247a6a09e5a7ee22ec86a156a

commit r16-8453-g69b4da776140629247a6a09e5a7ee22ec86a156a
Author: GCC Administrator <[email protected]>
Date:   Sat Apr 4 00:16:27 2026 +0000

    Daily bump.

Diff:
---
 gcc/ChangeLog           | 33 ++++++++++++++++++++++++
 gcc/DATESTAMP           |  2 +-
 gcc/ada/ChangeLog       |  6 +++++
 gcc/cp/ChangeLog        | 55 ++++++++++++++++++++++++++++++++++++++++
 gcc/fortran/ChangeLog   | 17 +++++++++++++
 gcc/testsuite/ChangeLog | 67 +++++++++++++++++++++++++++++++++++++++++++++++++
 libstdc++-v3/ChangeLog  | 28 +++++++++++++++++++++
 7 files changed, 207 insertions(+), 1 deletion(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 05008267962d..376f95759e6b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,36 @@
+2026-04-03  Sandra Loosemore  <[email protected]>
+
+       PR c/123234
+       * doc/extend.texi (Decimal Float): Clarify that GCC really does
+       support only the older N1312 draft as documented here, not the
+       standard C23 functionality yet.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       PR tree-optimization/124754
+       * tree-ssa-strlen.cc (strlen_pass::handle_builtin_strcpy): Make
+       sure both get_stridx calls are done before first get_strinfo call.
+       (strlen_pass::handle_builtin_memcpy): Likewise.
+       (strlen_pass::handle_builtin_strcat): Likewise.
+
+2026-04-03  Sandra Loosemore  <[email protected]>
+
+       PR debug/94491
+       * doc/invoke.texi (Debugging Options): Explicitly document what
+       -g2 does instead of just saying it's the default.
+
+2026-04-03  Sandra Loosemore  <[email protected]>
+
+       PR other/94182
+       * doc/implement-c.texi (Characters implementation): Add
+       cross-reference to more detailed discussion about signedness.
+       * doc/invoke.texi (C Dialect Options): Combine -fsigned-char
+       and -funsigned-char table entries since the following discussion
+       applies to both.  Add an anchor so other things can point at it.
+       (Warning Options): Add cross-references to the above two places.
+       Clarify that the warning is given regardless of whether char is
+       signed or unsigned.
+
 2026-04-02  Andrew Pinski  <[email protected]>
 
        PR tree-optimization/124746
diff --git a/gcc/DATESTAMP b/gcc/DATESTAMP
index aa616bdb404b..05c465eb48c8 100644
--- a/gcc/DATESTAMP
+++ b/gcc/DATESTAMP
@@ -1 +1 @@
-20260403
+20260404
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index a06721652b38..5edbfcdb1428 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -1,3 +1,9 @@
+2026-04-03  Tonu Naks  <[email protected]>
+
+       * doc/gnat_rm/gnat_language_extensions.rst: Adjust rules for
+       structural generic instantiations.
+       * gnat_rm.texi: Regenerate.
+
 2026-03-31  Eric Botcazou  <[email protected]>
 
        * sem_attr.adb (Analyze_Attribute) <Attribute_Reduce>: Rewrite the
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog
index daeeb0e13f5a..dd4d9fe2425e 100644
--- a/gcc/cp/ChangeLog
+++ b/gcc/cp/ChangeLog
@@ -1,3 +1,58 @@
+2026-04-03  Alexandre Oliva  <[email protected]>
+
+       * coroutines.cc (cp_coroutine_transform::build_ramp_function):
+       Zero-initialize refcount.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * cp-trait.def (__builtin_is_structural): New trait.
+       * semantics.cc (trait_expr_value): Handle CPTK_IS_STRUCTURAL.
+       (finish_trait_expr): Likewise.
+       * constraint.cc (diagnose_trait_expr): Likewise.
+       * metafns.gperf (enum metafn_code): Add METAFN_IS_STRUCTURAL_TYPE.
+       (is_structural_type): New metafn.
+       * metafns.h: Regenerate.
+       * reflect.cc (eval_is_structural_type): New function.
+       (process_metafunction): Handle METAFN_IS_STRUCTURAL_TYPE.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * cp-tree.h (enum cp_built_in_function): Add
+       CP_BUILT_IN_CURRENT_EXCEPTION and CP_BUILT_IN_UNCAUGHT_EXCEPTIONS.
+       * tree.cc (builtin_valid_in_constant_expr_p): Handle
+       those.
+       * decl.cc (cxx_init_decl_processing): Build
+       decls for CP_BUILT_IN_CURRENT_EXCEPTION and
+       CP_BUILT_IN_UNCAUGHT_EXCEPTIONS.
+       (require_deduced_type): Deduce CP_BUILT_IN_CURRENT_EXCEPTION
+       return type.
+       * cp-gimplify.cc (cp_gimplify_expr): Handle
+       CP_BUILT_IN_CURRENT_EXCEPTION and CP_BUILT_IN_UNCAUGHT_EXCEPTIONS.
+       * constexpr.cc (enum cxa_builtin): Remove STD_UNCAUGHT_EXCEPTIONS
+       and STD_CURRENT_EXCEPTION, add BUILTIN_UNCAUGHT_EXCEPTIONS and
+       BUILTIN_CURRENT_EXCEPTION, renumber some enumerators.
+       (cxx_cxa_builtin_fn_p): Don't check for std::uncaught_exceptions
+       nor std::current_exception.
+       (cxx_eval_cxa_builtin_fn): Handle BUILTIN_UNCAUGHT_EXCEPTIONS
+       and BUILTIN_CURRENT_EXCEPTION instead of STD_UNCAUGHT_EXCEPTIONS
+       and STD_CURRENT_EXCEPTION.
+       (cxx_eval_builtin_function_call): Handle
+       CP_BUILT_IN_CURRENT_EXCEPTION and CP_BUILT_IN_UNCAUGHT_EXCEPTIONS.
+       Do just one fndecl_builtin_p check for BUILT_IN_FRONTEND and
+       switch on DECL_FE_FUNCTION_CODE.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * reflect.cc (eval_data_member_spec): Implement C++26 LWG4517
+       - data_member_spec should throw for cv-qualified unnamed bit-fields.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       PR c++/124531
+       * init.cc (build_vec_init): Call braced_lists_to_strings for
+       array CONSTRUCTORs.  Handle RAW_DATA_CST and handle RANGE_EXPR
+       correctly.
+
 2026-04-02  Nathaniel Shead  <[email protected]>
 
        PR c++/124477
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index bc0fe0d5cf6e..dd7bec4a0e51 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,20 @@
+2026-04-03  Harald Anlauf  <[email protected]>
+
+       PR fortran/124652
+       * trans-expr.cc (gfc_conv_procedure_call): Do not clobber a
+       procedure pointer intent(out) argument.
+       * trans-intrinsic.cc (conv_isocbinding_function): When passing to
+       C_FUNLOC a procedure pointer that is a dummy, dereference it.
+
+2026-04-03  Paul Thomas  <[email protected]>
+
+       PR fortran/100155
+       * trans-expr.cc (gfc_add_interface_mapping): 'new_sym' dummy
+       attribute set to zero.
+       (gfc_conv_procedure_call): Deallocate allocatable components of
+       a class argument, enclosed in parentheses,wrap up the parmse
+       and proceed to the next argument.
+
 2026-04-02  Christopher Albert  <[email protected]>
            Paul Thomas  <[email protected]>
 
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 00d22178d46a..6dcec995d3d9 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,70 @@
+2026-04-03  H.J. Lu  <[email protected]>
+
+       PR target/123210
+       * gcc.target/i386/pr123210.c: New test.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       PR tree-optimization/124754
+       * g++.dg/tree-ssa/strlenopt-3.C: New test.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/type_trait14.C: New test.
+       * g++.dg/reflect/eh1.C: Add test for is_structural_type.
+       * g++.dg/reflect/eh2.C: Likewise.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/cpp26/constexpr-eh3.C: Use __builtin_current_exception()
+       instead of std::current_exception() and
+       __builttin_uncaught_exceptions() instead of
+       std::uncaught_exceptions().  Remove nested_exception related parts
+       of the test.
+       * g++.dg/cpp26/constexpr-eh8.C: Use __builtin_current_exception()
+       instead of std::current_exception().
+
+2026-04-03  Harald Anlauf  <[email protected]>
+
+       PR fortran/124652
+       * gfortran.dg/c_funloc_tests_10.f90: New test.
+
+2026-04-03  Christopher Albert  <[email protected]>
+
+       PR fortran/98203
+       PR fortran/98203
+       * gfortran.dg/gomp/pr98203.f90: New test.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/data_member_spec2.C: Add tests for unnamed bit-fields
+       with const and/or volatile types.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/define_aggregate10.C: New test.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * g++.dg/reflect/lwg4556.C: New test.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       PR c++/124531
+       * g++.dg/cpp/embed-29.C: New test.
+       * g++.dg/cpp0x/pr124531.C: New test.
+
+2026-04-03  Christopher Albert  <[email protected]>
+
+       PR fortran/95163
+       PR fortran/95163
+       * gfortran.dg/gomp/pr95163.f90: New test.
+
+2026-04-03  Paul Thomas  <[email protected]>
+
+       PR fortran/100155
+       * gfortran.dg/pr100155.f90: New test.
+
 2026-04-02  Nathaniel Shead  <[email protected]>
 
        PR c++/124477
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index ab9e329ac406..96cad9a88eac 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,31 @@
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * include/bits/version.def (is_structural): New.
+       * include/bits/version.h: Regenerate.
+       * include/std/type_traits (__glibcxx_want_is_structural): Define.
+       (std::is_structural): New type trait.
+       (std::is_structural_v): New type trait variable template.
+       * include/std/meta (std::meta::is_structural_type): New declaration.
+       * src/c++23/std.cc.in: Export std::is_structural, std::is_structural_v
+       and std::meta::is_structural_type.
+       * 
testsuite/20_util/is_structural/requirements/explicit_instantiation.cc: New 
test.
+       * testsuite/20_util/is_structural/requirements/typedefs.cc: New test.
+       * testsuite/20_util/is_structural/value.cc: New test.
+       * testsuite/20_util/variable_templates_for_traits.cc: Test
+       is_structural_v.
+
+2026-04-03  Jakub Jelinek  <[email protected]>
+
+       * libsupc++/exception_ptr.h (std::make_exception_ptr): Use
+       __builtin_current_exception() instead of current_exception() if
+       the builtin exists.
+       * libsupc++/nested_exception.h: Revert 2026-01-07 and 2025-07-10
+       changes.
+       * testsuite/18_support/exception_ptr/exception_ptr_cast.cc (test01):
+       Use __builtin_current_exception instead of std::current_exception
+       if __has_builtin(__builtin_current_exception).  Otherwise don't
+       try to constant evaluate test01.
+
 2026-04-02  Patrick Palka  <[email protected]>
 
        * include/std/ranges (zip_view::size): Uglify 'sizes'

Reply via email to