[gcc(refs/users/meissner/heads/work239-submit)] libstdc++: Export std::enable_nonlocking_formatter_optimization in std.cc [PR121790]

Michael Meissner meissner@gcc.gnu.org
Thu Mar 19 22:47:47 GMT 2026


https://gcc.gnu.org/g:510663574bc16fc2c657f5e1ac20b1098cea8020

commit 510663574bc16fc2c657f5e1ac20b1098cea8020
Author: Jakub Jelinek <jakub@redhat.com>
Date:   Thu Mar 19 17:37:39 2026 +0100

    libstdc++: Export std::enable_nonlocking_formatter_optimization in std.cc [PR121790]
    
    On Thu, Mar 19, 2026 at 03:03:38PM +0000, Jonathan Wakely wrote:
    > > enable_nonlocking_formatter_optimization has been added in PR121790 P3235R3
    > > r16-4351, though bits/formatfwd.h hunk already in
    > > PR121790 P3107R5 r16-4350.  I wonder why it shows up for C++23 though.
    >
    > P3235R3 was approved as a DR for C++23, at the 2024-06 meeting:
    > "8. Accept as a Defect Report and apply the changes in P3235R3
    > (std::print more types faster with less memory) to the C++ working
    > paper. "
    > The committee kept approving a LOT of std::format and std::print changes as DRs.
    > So it's enabled in the header for C++23, and so it should also be
    > exported from the module for C++23.
    
    Ok, in that case here is another patch to export it.
    
    2026-03-19  Jakub Jelinek  <jakub@redhat.com>
    
            PR libstdc++/121790
            * src/c++23/std.cc.in: Add enable_nonlocking_formatter_optimization.

Diff:
---
 libstdc++-v3/src/c++23/std.cc.in | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/libstdc++-v3/src/c++23/std.cc.in b/libstdc++-v3/src/c++23/std.cc.in
index 5b0e5c4debd2..ac964511424b 100644
--- a/libstdc++-v3/src/c++23/std.cc.in
+++ b/libstdc++-v3/src/c++23/std.cc.in
@@ -1384,6 +1384,9 @@ export namespace std
   using std::range_format;
   using std::range_formatter;
 #endif
+#if __glibcxx_print >= 202403L
+  using std::enable_nonlocking_formatter_optimization;
+#endif
 }
 
 // <forward_list>


More information about the Libstdc++-cvs mailing list