[gcc r16-5007] libstdc++: adjust std module TBB workaround
Jason Merrill
jason@gcc.gnu.org
Mon Nov 3 15:56:42 GMT 2025
https://gcc.gnu.org/g:237a83da197adf6d0a70d715812182df77fa5bf7
commit r16-5007-g237a83da197adf6d0a70d715812182df77fa5bf7
Author: Jason Merrill <jason@redhat.com>
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.
More information about the Libstdc++-cvs
mailing list