diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0d0ce4ad..7cdbc9a2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -50,7 +50,7 @@ jobs: - { os: ubuntu-22.04, rust-version: "1.77", target: 'x86_64-unknown-linux-gnu'} # rust versions - { os: ubuntu-22.04, rust-version: beta, target: 'x86_64-unknown-linux-gnu'} - - { os: ubuntu-22.04, rust-version: nightly, target: 'x86_64-unknown-linux-gnu'} + - { os: ubuntu-22.04, rust-version: nightly, target: 'x86_64-unknown-linux-gnu', miri: true, components: ["miri"]} defaults: run: shell: bash @@ -66,6 +66,7 @@ jobs: rust-version: ${{ matrix.rust-version }} targets: ${{ matrix.target }} cache-context: ${{ matrix.os }} + components: ${{ matrix.components }} # Build and test. - name: Build library @@ -73,6 +74,10 @@ jobs: - name: Test run: cargo test --target ${{ matrix.target }} ${{ matrix.test-args }} --all + - name: Check miri + if: matrix.miri + run: cargo miri test + # On stable rust builds, build a binary and publish as a github actions # artifact. These binaries could be useful for testing the pipeline but # are only retained by github for 90 days. diff --git a/tests/scryer/issues.rs b/tests/scryer/issues.rs index 40e3f5ce..c21a8381 100644 --- a/tests/scryer/issues.rs +++ b/tests/scryer/issues.rs @@ -15,6 +15,7 @@ fn call_0() { // issue #2361 #[serial] #[test] +#[cfg_attr(miri, ignore = "blocked on helper.rs UB")] fn call_qualification() { load_module_test("tests-pl/issue2361-call-qualified.pl", ""); }