diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index f6837d4..3f71e85 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -4,7 +4,6 @@ on: release: types: [published] push: - tags: branches: - main - master @@ -23,13 +22,13 @@ jobs: strategy: matrix: os: - - ubuntu-latest + - ubuntu-24.04 #- macos-latest #- windows-2022 compiler: # you can specify the version after `-` like "llvm-15.0.2". - llvm-18 - #- gcc-14 + - gcc-14 build_type: - Release include: @@ -53,13 +52,17 @@ jobs: ${{ runner.os }}-${{ matrix.compiler }} - name: Install dependencies (linux) - run: sudo apt update && sudo apt install ninja-build libopencv-dev libpoco-dev - if: matrix.os == 'ubuntu-latest' + run: | + sudo add-apt-repository universe + sudo apt-get update + sudo apt-get install ninja-build libopencv-dev libpoco-dev + if: contains(matrix.os, 'ubuntu' ) + - name: Install dependencies (windows) run: | choco install opencv --version 4.10.0 -y --package-parameters '/InstallationPath:C:\opencv /Environment' echo "C:\opencv\opencv\build\x64\vc16\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append - if: matrix.os == 'windows-latest' + if: contains(matrix.os, 'windows' ) - name: Setup Cpp uses: aminya/setup-cpp@v1 diff --git a/src/chaos/BernoulliSequence.hpp b/src/chaos/BernoulliSequence.hpp index ba766d4..d851cb7 100644 --- a/src/chaos/BernoulliSequence.hpp +++ b/src/chaos/BernoulliSequence.hpp @@ -40,8 +40,6 @@ class BernoulliSequence : public Sequence } template Func> Fail &with(Func f, double weight = 1.0) { - if (!f) - return *this; exceptions.push_back(std::move(f)); weights.push_back(weight); return *this; diff --git a/src/chaos/Sequence.hpp b/src/chaos/Sequence.hpp index 7d906f8..345686b 100644 --- a/src/chaos/Sequence.hpp +++ b/src/chaos/Sequence.hpp @@ -8,6 +8,9 @@ class Sequence virtual void checkIsOpen() = 0; virtual void checkRetrieve() = 0; virtual void checkGrab() = 0; - virtual ~Sequence() = default; + virtual ~Sequence(); }; + +// workaround for GCC14, othewise, it segfaults +inline Sequence::~Sequence() = default; } // namespace FairyCam diff --git a/tests/AnyCamera.cpp b/tests/AnyCamera.cpp index 8e0cfe5..b0e8dfd 100644 --- a/tests/AnyCamera.cpp +++ b/tests/AnyCamera.cpp @@ -4,6 +4,7 @@ #include #include +#include //required by GCC14 import FairyCam;