Skip to content

Add is_convertible_without_narrowing #228

Add is_convertible_without_narrowing

Add is_convertible_without_narrowing #228

Workflow file for this run

# SPDX-License-Identifier: MIT
name: CI
permissions:
id-token: write
on:
pull_request:
push:
branches:
- 'main'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
changes:
runs-on: ubuntu-latest
outputs:
components: ${{ steps.filter.outputs.changes }}
steps:
- uses: actions/checkout@v5
- uses: dorny/paths-filter@v3
id: filter
with:
filters: |
iris:
- '.github/workflows/**/*.yml'
- '.github/actions/**/*.yml'
- 'CMakeLists.txt'
- 'include/iris/**/*'
- 'test/CMakeLists.txt'
- 'test/**/*'
build:
name: "[${{ matrix.cpp_version.name }}] ${{ matrix.compiler.name }} ${{ matrix.compiler.version }} (${{ matrix.build_type.name }})"
needs: changes
if: ${{ needs.changes.outputs.components != '[]' && needs.changes.outputs.components != '' }}
strategy:
fail-fast: false
matrix:
os:
- name: ubuntu
version: 24.04
- name: windows
version: 2022
- name: windows
version: 2025-vs2026
build_type:
- name: Debug
lowercase: debug
- name: Release
lowercase: release
cpp_version:
- name: C++23
number: 23
- name: C++26
number: 26
compiler:
- name: GCC
toolset: gcc
version: 14
executable: g++-14
cxxflags: -fdiagnostics-color=always
- name: Clang
toolset: clang
version: 21
executable: clang++-21
cxxflags: -stdlib=libc++ -fcolor-diagnostics
- name: MSVC
toolset: msvc
version: 2022
toolset_version: 14.44
vs-path: C:\Program Files\Microsoft Visual Studio\2022\Enterprise
cmake_config_additional_args: -G "Visual Studio 17 2022"
builder_additional_args: -- "-consoleLoggerParameters:ForceConsoleColor"
executable: cl
- name: MSVC
toolset: msvc
version: 2026
toolset_version: 14.50
vs-path: C:\Program Files\Microsoft Visual Studio\18\Enterprise
cmake_config_additional_args: -G "Visual Studio 18 2026"
builder_additional_args: -- "-consoleLoggerParameters:ForceConsoleColor"
executable: cl
exclude:
- os:
name: windows
version: 2022
compiler:
version: 2026
- os:
name: windows
version: 2025-vs2026
compiler:
version: 2022
- os:
name: windows
compiler:
name: GCC
- os:
name: windows
compiler:
name: Clang
- os:
name: ubuntu
compiler:
name: MSVC
uses: ./.github/workflows/build.yml
with:
os-name: ${{ matrix.os.name }}
os-version: ${{ matrix.os.version }}
build-type-name: ${{ matrix.build_type.name }}
cpp-version-name: ${{ matrix.cpp_version.name }}
cpp-version-number: ${{ matrix.cpp_version.number }}
compiler-toolset: ${{ matrix.compiler.toolset }}
compiler-version: ${{ matrix.compiler.version }}
compiler-executable: ${{ matrix.compiler.executable }}
compiler-cxxflags: ${{ matrix.compiler.cxxflags }}
compiler-toolset-version: ${{ matrix.compiler.toolset_version }}
vs-path: ${{ matrix.compiler.vs-path }}
cmake-config-additional-args: ${{ matrix.compiler.cmake_config_additional_args }}
compiler-builder-additional-args: ${{ matrix.compiler.builder_additional_args }}
components: ${{ needs.changes.outputs.components }}
run-notifier:
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: iris-cpp/cpp-warning-notifier@v0.7.0
with:
IGNORE_NO_MARKER: true
RUN_ID: ${{ github.run_id }}
JOB_ID: ${{ job.check_run_id }}
WORKER_URL: https://cpp-warning-notifier.iris-cpp.org
STEP_REGEX: Build .+
JOB_REGEX: '\[C\+\+(?<cppVersion>\d+)\] (?<vendorName>.+) (?<vendorVersion>.+) \((?<config>.+)\) / (?<component>.+)'
ROW_HEADERS: '["component", "vendorName", "vendorVersion", "config"]'
COLUMN_HEADER: cppVersion