diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e978860..a2faced 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -39,6 +39,27 @@ jobs: path: bazel-disk key: bazel-disk-basic-${{matrix.compiler.name}}-${{matrix.mode.name}}-${{matrix.std.name}}-${{matrix.stdlib.name}}-${{matrix.feature.name}}-${{github.sha}} + compatible: + strategy: + fail-fast: false + matrix: + compiler: [{name: gcc-9, flag: --action_env=CC=gcc-9}] + runs-on: ubuntu-20.04 + name: compatible-${{matrix.compiler.name}} + steps: + - uses: actions/checkout@v4 + - uses: actions/cache/restore@v4 + with: + path: bazel-disk + key: bazel-disk-compatible-${{matrix.compiler.name}}-${{github.sha}} + restore-keys: bazel-disk-compatible-${{matrix.compiler.name}} + - run: bazel test --disk_cache=bazel-disk --verbose_failures --test_output=errors ${{matrix.compiler.flag}} test/... + - uses: actions/cache/save@v4 + if: always() + with: + path: bazel-disk + key: bazel-disk-basic-${{matrix.compiler.name}}-${{github.sha}} + arenastring: strategy: fail-fast: false diff --git a/src/babylon/concurrent/garbage_collector.h b/src/babylon/concurrent/garbage_collector.h index dd480b3..d468e5f 100644 --- a/src/babylon/concurrent/garbage_collector.h +++ b/src/babylon/concurrent/garbage_collector.h @@ -59,7 +59,7 @@ class GarbageCollector { private: class ReclaimTask { public: - ReclaimTask() noexcept = default; + ReclaimTask() = default; ReclaimTask(ReclaimTask&&) = default; ReclaimTask(const ReclaimTask&) = delete; ReclaimTask& operator=(ReclaimTask&&) = default; diff --git a/src/babylon/executor.h b/src/babylon/executor.h index 70ee363..8199826 100644 --- a/src/babylon/executor.h +++ b/src/babylon/executor.h @@ -256,7 +256,7 @@ struct AlwaysUseNewThreadExecutor : public Executor { class ThreadPoolExecutor : public Executor { public: // Use **this** in worker thread, so no copy nor move - ThreadPoolExecutor() noexcept = default; + ThreadPoolExecutor() = default; ThreadPoolExecutor(ThreadPoolExecutor&&) noexcept = delete; ThreadPoolExecutor(const ThreadPoolExecutor&) noexcept = delete; ThreadPoolExecutor& operator=(ThreadPoolExecutor&&) noexcept = delete;