File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -301,6 +301,10 @@ namespace exec::__system_context_default_impl {
301301 // / Keeps track of the backends for the system context interfaces.
302302 template <typename _Interface, typename _Impl>
303303 struct __instance_data {
304+ // work around for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119652
305+ constexpr __instance_data () noexcept // NOLINT(modernize-use-equals-default)
306+ {}
307+
304308 // / Gets the current instance; if there is no instance, uses the current factory to create one.
305309 auto __get_current_instance () -> std::shared_ptr<_Interface> {
306310 // If we have a valid instance, return it.
@@ -338,16 +342,11 @@ namespace exec::__system_context_default_impl {
338342 return __old_factory;
339343 }
340344
341- // work around for https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119652
342- #if !STDEXEC_GCC() || __GNUC__ != 14
343345 private:
344- #endif // !STDEXEC_GCC() || __GNUC__ != 14
345-
346346 std::atomic<bool > __instance_locked_{false };
347347 std::shared_ptr<_Interface> __instance_{nullptr };
348348 std::atomic<__parallel_scheduler_backend_factory> __factory_{__default_factory};
349349
350- private:
351350 // / The default factory returns an instance of `_Impl`.
352351 static auto __default_factory () -> std::shared_ptr<_Interface> {
353352 return std::make_shared<_Impl>();
You can’t perform that action at this time.
0 commit comments