https://gcc.gnu.org/g:237a83da197adf6d0a70d715812182df77fa5bf7

commit r16-5007-g237a83da197adf6d0a70d715812182df77fa5bf7
Author: Jason Merrill <[email protected]>
Date:   Mon Nov 3 18:55:06 2025 +0300

    libstdc++: adjust std module TBB workaround
    
    Messing with macros before possibly importing the stdc++.h header unit is
    bad form; better to mess with (other) macros afterward.
    
    libstdc++-v3/ChangeLog:
    
            * src/c++23/std.cc.in: Move TBB macro shenanigans after
            bits/stdc++.h.

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

diff --git a/libstdc++-v3/src/c++23/std.cc.in b/libstdc++-v3/src/c++23/std.cc.in
index 11a8d4fb486f..27d83f1ba1b7 100644
--- a/libstdc++-v3/src/c++23/std.cc.in
+++ b/libstdc++-v3/src/c++23/std.cc.in
@@ -23,11 +23,14 @@
 
 module;
 
+#include <bits/stdc++.h>
+
 // stdc++.h doesn't include <execution> because of TBB issues;
 // FIXME for now let's avoid the problem by suppressing TBB.
-#define _GLIBCXX_USE_TBB_PAR_BACKEND 0
-
-#include <bits/stdc++.h>
+#ifdef _PSTL_PAR_BACKEND_TBB
+#undef _PSTL_PAR_BACKEND_TBB
+#define _PSTL_PAR_BACKEND_SERIAL
+#endif
 #include <execution>
 
 // Module std does include deprecated library interfaces.

Reply via email to