about summary refs log tree commit diff
diff options
context:
space:
mode:
authorCaleb Zulawski <caleb.zulawski@gmail.com>2021-07-28 04:26:55 +0000
committerCaleb Zulawski <caleb.zulawski@gmail.com>2021-07-28 04:26:55 +0000
commit1f69bc459a2d4d2a34009553e57ff93598e6a342 (patch)
treea1ee648a44fdcf68c5781c0a38a27529ac9070c6
parent34384b7a68b3a72fc96e5293de7c7486d2cceb92 (diff)
downloadrust-1f69bc459a2d4d2a34009553e57ff93598e6a342.tar.gz
rust-1f69bc459a2d4d2a34009553e57ff93598e6a342.zip
Add CI for testing cargo features
-rw-r--r--.github/workflows/ci.yml25
1 files changed, 25 insertions, 0 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 9c62a6d40ae..2f15dcc6c16 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -196,3 +196,28 @@ jobs:
       - name: Test (release)
         run: cross test --verbose --target=${{ matrix.target }} --release
 
+  features:
+    name: "Check cargo features (${{ matrix.features }} ${{ matrix.rustflags }})"
+    runs-on: ubuntu-latest
+    strategy:
+      fail-fast: false
+      matrix:
+        rustflags:
+          - ""
+          - "-Ctarget-feature=+avx512" # AVX-512 uses packed bit masks, so enable it to test more code paths
+        features:
+          - ""
+          - "--feature std"
+          - "--feature const_evaluatable_checked"
+          - "--feature std --feature const_evaluatable_checked"
+
+    steps:
+      - uses: actions/checkout@v2
+      - name: Setup Rust
+        run: |
+          rustup update nightly --no-self-update
+          rustup default nightly
+      - name: Check build
+        run: cargo check --all-targets --no-default-features ${{ matrix.features }}
+        env:
+            RUSTFLAGS: ${{ matrix.rustflags }}