diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 32379e8..4324179 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,9 +16,12 @@ jobs: toolchain: - macos-latest-clang + - macos-12-clang - ubuntu-latest-clang - ubuntu-latest-gcc + - windows-2019-msvc - windows-latest-msvc + - windows-latest-clang include: - toolchain: macos-latest-clang @@ -26,6 +29,11 @@ jobs: c_compiler: clang cxx_compiler: clang++ + - toolchain: macos-12-clang + os: macos-latest + c_compiler: clang + cxx_compiler: clang++ + - toolchain: ubuntu-latest-clang os: ubuntu-latest c_compiler: clang @@ -36,11 +44,22 @@ jobs: c_compiler: cc cxx_compiler: g++ + - toolchain: windows-2019-msvc + os: windows-2019 + c_compiler: msvc + cxx_compiler: msvc + - toolchain: windows-latest-msvc os: windows-latest c_compiler: msvc cxx_compiler: msvc + - toolchain: windows-latest-clang + os: windows-latest + c_compiler: clang-cl + cxx_compiler: clang-cl + cmake_opts: -T ClangCL + steps: - name: Checkout Code @@ -48,7 +67,7 @@ jobs: - name: Configure working-directory: test - run: cmake -S . -B build + run: cmake -S . -B build ${{ matrix.cmake_opts }} env: CC: ${{ matrix.c_compiler }} CXX: ${{ matrix.cxx_compiler }} diff --git a/include/argparse/argparse.hpp b/include/argparse/argparse.hpp index 569704e..b88ac63 100644 --- a/include/argparse/argparse.hpp +++ b/include/argparse/argparse.hpp @@ -246,10 +246,10 @@ template struct parse_number { namespace { -template constexpr auto generic_strtod = nullptr; -template <> constexpr auto generic_strtod = strtof; -template <> constexpr auto generic_strtod = strtod; -template <> constexpr auto generic_strtod = strtold; +template inline const auto generic_strtod = nullptr; +template <> inline const auto generic_strtod = strtof; +template <> inline const auto generic_strtod = strtod; +template <> inline const auto generic_strtod = strtold; } // namespace