Merge pull request #189 from skrobinson/wip-update-ci-hosts

Update CI hosts and fix clang-cl build
This commit is contained in:
Pranav 2022-08-13 08:27:21 -05:00 committed by GitHub
commit c44dde5440
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 24 additions and 5 deletions

View File

@ -16,9 +16,12 @@ jobs:
toolchain: toolchain:
- macos-latest-clang - macos-latest-clang
- macos-12-clang
- ubuntu-latest-clang - ubuntu-latest-clang
- ubuntu-latest-gcc - ubuntu-latest-gcc
- windows-2019-msvc
- windows-latest-msvc - windows-latest-msvc
- windows-latest-clang
include: include:
- toolchain: macos-latest-clang - toolchain: macos-latest-clang
@ -26,6 +29,11 @@ jobs:
c_compiler: clang c_compiler: clang
cxx_compiler: clang++ cxx_compiler: clang++
- toolchain: macos-12-clang
os: macos-latest
c_compiler: clang
cxx_compiler: clang++
- toolchain: ubuntu-latest-clang - toolchain: ubuntu-latest-clang
os: ubuntu-latest os: ubuntu-latest
c_compiler: clang c_compiler: clang
@ -36,11 +44,22 @@ jobs:
c_compiler: cc c_compiler: cc
cxx_compiler: g++ cxx_compiler: g++
- toolchain: windows-2019-msvc
os: windows-2019
c_compiler: msvc
cxx_compiler: msvc
- toolchain: windows-latest-msvc - toolchain: windows-latest-msvc
os: windows-latest os: windows-latest
c_compiler: msvc c_compiler: msvc
cxx_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: steps:
- name: Checkout Code - name: Checkout Code
@ -48,7 +67,7 @@ jobs:
- name: Configure - name: Configure
working-directory: test working-directory: test
run: cmake -S . -B build run: cmake -S . -B build ${{ matrix.cmake_opts }}
env: env:
CC: ${{ matrix.c_compiler }} CC: ${{ matrix.c_compiler }}
CXX: ${{ matrix.cxx_compiler }} CXX: ${{ matrix.cxx_compiler }}

View File

@ -246,10 +246,10 @@ template <class T> struct parse_number<T> {
namespace { namespace {
template <class T> constexpr auto generic_strtod = nullptr; template <class T> inline const auto generic_strtod = nullptr;
template <> constexpr auto generic_strtod<float> = strtof; template <> inline const auto generic_strtod<float> = strtof;
template <> constexpr auto generic_strtod<double> = strtod; template <> inline const auto generic_strtod<double> = strtod;
template <> constexpr auto generic_strtod<long double> = strtold; template <> inline const auto generic_strtod<long double> = strtold;
} // namespace } // namespace