Repository navigation
Fix Stack<std::optional>::get handling (#272) #115
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ASAN | |
| on: | |
| push: | |
| paths: | |
| - "**/workflows/build_asan.yml" | |
| - "**/Source/**" | |
| - "**/Tests/**" | |
| - "**/ThirdParty/**" | |
| - "**/CMakeLists.txt" | |
| - "**/.gitmodules" | |
| - "!**/*.md" | |
| - "!**/*.txt" | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| env: | |
| BUILD_TYPE: RelWithDebInfo | |
| jobs: | |
| lua: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| lua: | |
| - { version: "5.1", suffix: "51" } | |
| - { version: "5.2", suffix: "52" } | |
| - { version: "5.3", suffix: "53" } | |
| - { version: "5.4", suffix: "54" } | |
| - { version: "5.5", suffix: "55" } | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| submodules: true | |
| - name: Install Dependencies | |
| run: sudo apt-get -y install ninja-build | |
| - name: Create Build Environments | |
| run: | | |
| cmake -E make_directory ${{runner.workspace}}/build17 | |
| cmake -E make_directory ${{runner.workspace}}/build20 | |
| cmake -E make_directory ${{runner.workspace}}/build23 | |
| - name: Configure C++17 | |
| working-directory: ${{runner.workspace}}/build17 | |
| run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_CXX_STANDARD=17 -DLUABRIDGE_SANITIZE=address -G Ninja | |
| - name: Build Lua ${{ matrix.lua.version }} (C++17) | |
| working-directory: ${{runner.workspace}}/build17 | |
| run: | | |
| cmake --build . --config $BUILD_TYPE --parallel $(nproc) --target \ | |
| LuaBridgeTests${{ matrix.lua.suffix }} \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}LuaC \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}Noexcept \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}LuaCNoexcept | |
| - name: Test Lua ${{ matrix.lua.version }} (C++17) | |
| working-directory: ${{runner.workspace}}/build17 | |
| env: | |
| ASAN_OPTIONS: detect_leaks=0:detect_odr_violation=0 | |
| run: ctest --parallel $(nproc) -R "LuaBridgeTests${{ matrix.lua.suffix }}" --output-on-failure | |
| - name: Configure C++20 | |
| working-directory: ${{runner.workspace}}/build20 | |
| run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_CXX_STANDARD=20 -DLUABRIDGE_SANITIZE=address -G Ninja | |
| - name: Build Lua ${{ matrix.lua.version }} (C++20) | |
| working-directory: ${{runner.workspace}}/build20 | |
| run: | | |
| cmake --build . --config $BUILD_TYPE --parallel $(nproc) --target \ | |
| LuaBridgeTests${{ matrix.lua.suffix }} \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}LuaC \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}Noexcept \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}LuaCNoexcept | |
| - name: Test Lua ${{ matrix.lua.version }} (C++20) | |
| working-directory: ${{runner.workspace}}/build20 | |
| env: | |
| ASAN_OPTIONS: detect_leaks=0:detect_odr_violation=0 | |
| run: ctest --parallel $(nproc) -R "LuaBridgeTests${{ matrix.lua.suffix }}" --output-on-failure | |
| - name: Configure C++23 | |
| working-directory: ${{runner.workspace}}/build23 | |
| run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=$BUILD_TYPE -DCMAKE_CXX_STANDARD=23 -DLUABRIDGE_SANITIZE=address -G Ninja | |
| - name: Build Lua ${{ matrix.lua.version }} (C++23) | |
| working-directory: ${{runner.workspace}}/build23 | |
| run: | | |
| cmake --build . --config $BUILD_TYPE --parallel $(nproc) --target \ | |
| LuaBridgeTests${{ matrix.lua.suffix }} \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}LuaC \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}Noexcept \ | |
| LuaBridgeTests${{ matrix.lua.suffix }}LuaCNoexcept | |
| - name: Test Lua ${{ matrix.lua.version }} (C++23) | |
| working-directory: ${{runner.workspace}}/build23 | |
| env: | |
| ASAN_OPTIONS: detect_leaks=0:detect_odr_violation=0 | |
| run: ctest --parallel $(nproc) -R "LuaBridgeTests${{ matrix.lua.suffix }}" --output-on-failure |