diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 6bb834e3..2a20282f 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -46,6 +46,44 @@ jobs: - name: Test run: ctest --test-dir build --output-on-failure + linux-sanitizers: + name: Linux GCC ASAN+UBSAN ${{ matrix.build_type }} + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + build_type: [Debug, Release] + steps: + - uses: actions/checkout@v4 + + - name: Configure + run: cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DENABLE_ADDRESS_SANITIZER=ON -DENABLE_UNDEFINED_SANITIZER=ON + + - name: Build + run: cmake --build build -j + + - name: Test + run: ctest --test-dir build --output-on-failure + + macos-sanitizers: + name: macOS AppleClang ASAN+UBSAN ${{ matrix.build_type }} + runs-on: macos-latest + strategy: + fail-fast: false + matrix: + build_type: [Debug, Release] + steps: + - uses: actions/checkout@v4 + + - name: Configure + run: cmake -B build -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -DENABLE_ADDRESS_SANITIZER=ON -DENABLE_UNDEFINED_SANITIZER=ON + + - name: Build + run: cmake --build build -j + + - name: Test + run: ctest --test-dir build --output-on-failure + windows: name: Windows MSVC ${{ matrix.build_type }} runs-on: windows-latest diff --git a/appveyor.yml b/appveyor.yml deleted file mode 100644 index 5a4fe67e..00000000 --- a/appveyor.yml +++ /dev/null @@ -1,23 +0,0 @@ -version: 6.1.x.{build} -image: - - Visual Studio 2019 -environment: - matrix: - - VS_VERSION: "Visual Studio 16" -build_script: -- cmd: >- - mkdir build - - cd build - - cmake c:\Projects\chaiscript -G "%VS_VERSION%" -DBUILD_TESTING:BOOL=ON -DBUILD_MODULES:BOOL=ON - - cmake --build . --config Debug -test_script: -- cmd: ctest -C Debug -notifications: -- provider: Webhook - url: https://webhooks.gitter.im/e/9ff725a985b5679d1d5d - on_build_success: true - on_build_failure: true - on_build_status_changed: false diff --git a/src/main.cpp b/src/main.cpp index 6ec746fb..ab94b5d1 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -7,6 +7,7 @@ // This is an open source non-commercial project. Dear PVS-Studio, please check it. // PVS-Studio Static Code Analyzer for C, C++ and C#: http://www.viva64.com +#include #include #include #include diff --git a/unittests/now_function.chai b/unittests/now_function.chai new file mode 100644 index 00000000..5825cdec --- /dev/null +++ b/unittests/now_function.chai @@ -0,0 +1,3 @@ +// Regression test for issue #660: now() requires include +var t = now() +assert_true(t > 0)