| .test:windows: | 
 |   extends: .common:windows | 
 |   stage: test | 
 |   script: | 
 |     - ./ci/scripts/test.windows.script.ps1 | 
 |   after_script: | 
 |     - ./ci/scripts/test.windows.after_script.ps1 | 
 |   rules: | 
 |     - if: $CI_PIPELINE_SOURCE == "schedule" | 
 |     - if: $CI_PIPELINE_SOURCE == "web" | 
 |   tags:  | 
 |     - eigen-runner | 
 |     - windows | 
 |     - x86-64 | 
 |  | 
 | ##### MSVC ##################################################################### | 
 |  | 
 | # MSVC 14.16 (VS 2017) | 
 | .test:windows:x86-64:msvc-14.16:default: | 
 |   extends: .test:windows | 
 |   needs: [ build:windows:x86-64:msvc-14.16:default ] | 
 |  | 
 | test:windows:x86-64:msvc-14.16:default:official: | 
 |   extends: .test:windows:x86-64:msvc-14.16:default | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: Official | 
 |  | 
 | test:windows:x86-64:msvc-14.16:default:unsupported: | 
 |   extends: .test:windows:x86-64:msvc-14.16:default | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: Unsupported | 
 |  | 
 | # MSVC 14.29 (VS 2019) | 
 | .test:windows:x86-64:msvc-14.29:default: | 
 |   extends: .test:windows | 
 |   needs: [ build:windows:x86-64:msvc-14.29:default ] | 
 |  | 
 | test:windows:x86-64:msvc-14.29:default:official: | 
 |   extends: .test:windows:x86-64:msvc-14.29:default | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: Official | 
 |  | 
 | test:windows:x86-64:msvc-14.29:default:unsupported: | 
 |   extends: .test:windows:x86-64:msvc-14.29:default | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: Unsupported | 
 |  | 
 | .test:windows:x86-64:msvc-14.29:avx2: | 
 |   extends: .test:windows | 
 |   needs: [ build:windows:x86-64:msvc-14.29:avx2 ] | 
 |  | 
 | test:windows:x86-64:msvc-14.29:avx2:official: | 
 |   extends: .test:windows:x86-64:msvc-14.29:avx2 | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: Official | 
 |  | 
 | test:windows:x86-64:msvc-14.29:avx2:unsupported: | 
 |   extends: .test:windows:x86-64:msvc-14.29:avx2 | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: Unsupported | 
 |  | 
 | .test:windows:x86-64:msvc-14.29:avx512dq: | 
 |   extends: .test:windows | 
 |   needs: [ build:windows:x86-64:msvc-14.29:avx512dq ] | 
 |   tags:  | 
 |     - eigen-runner | 
 |     - windows | 
 |     - x86-64 | 
 |     - avx512 | 
 |  | 
 | test:windows:x86-64:msvc-14.29:avx512dq:official: | 
 |   extends: .test:windows:x86-64:msvc-14.29:avx512dq | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: Official | 
 |  | 
 | test:windows:x86-64:msvc-14.29:avx512dq:unsupported: | 
 |   extends: .test:windows:x86-64:msvc-14.29:avx512dq | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: Unsupported | 
 |  | 
 | ##### MSVC + CUDA ############################################################## | 
 | .test:windows:cuda: | 
 |   extends: .test:windows | 
 |   allow_failure: true | 
 |   variables: | 
 |     EIGEN_CI_TEST_LABEL: gpu | 
 |   tags:  | 
 |     - eigen-runner | 
 |     - windows | 
 |     - x86-64 | 
 |     - cuda | 
 |  | 
 | # The CUDA 9.2 compiler crashes with an internal error. | 
 | # # MSVC 14.16 + CUDA 9.2 | 
 | # test:windows:x86-64:cuda-9.2:msvc-14.16: | 
 | #   extends: .test:windows:cuda | 
 | #   needs: [ build:windows:x86-64:cuda-9.2:msvc-14.16 ] | 
 |    | 
 | # MSVC 14.29 + CUDA 10.2 | 
 | test:windows:x86-64:cuda-10.2:msvc-14.29: | 
 |   extends: .test:windows:cuda | 
 |   needs: [ build:windows:x86-64:cuda-10.2:msvc-14.29 ] | 
 |    | 
 | # MSVC 14.29 + CUDA 11.4 | 
 | test:windows:x86-64:cuda-11.4:msvc-14.29: | 
 |   extends: .test:windows:cuda | 
 |   needs: [ build:windows:x86-64:cuda-11.4:msvc-14.29 ] |