-
Notifications
You must be signed in to change notification settings - Fork 3.7k
Closed
Labels
Area: ClangOS: Windowsawaiting-deploymentCode complete; awaiting deployment and/or deployment in progressCode complete; awaiting deployment and/or deployment in progressbug report
Description
Description
The latest Windows Server 2022 image with Visual Studio build tools
** Visual Studio 2022 Developer PowerShell v17.10.1
** Copyright (c) 2022 Microsoft Corporation
contain Clang CL version 16.0.6, but Clang CL version >=17.0.0 is expected for that build tool set.
Likely related to #9990
Platforms affected
- Azure DevOps
- GitHub Actions - Standard Runners
- GitHub Actions - Larger Runners
Runner images affected
- Ubuntu 20.04
- Ubuntu 22.04
- Ubuntu 24.04
- macOS 11
- macOS 12
- macOS 13
- macOS 13 Arm64
- macOS 14
- macOS 14 Arm64
- Windows Server 2019
- Windows Server 2022
Image version and build link
20240603.1.0
example of failing build: https://github.com/PowerGridModel/power-grid-model/actions/runs/9381448994/job/25830720214#step:6:51
Is it regression?
yes,
latest passing image version: 20240514.3.0
example of passing build: https://github.com/PowerGridModel/power-grid-model/actions/runs/9380566997/job/25827885168#step:6:51
Expected behavior
- Clang 17.0.3 is found (according to https://learn.microsoft.com/en-us/visualstudio/install/workload-component-id-vs-build-tools?view=vs-2022 )
- Build does not fail on STL
static_assertchecks.
Actual behavior
- Clang 16.0.6 found
-- The C compiler identification is Clang 16.0.6 with MSVC-like command-line
-- The CXX compiler identification is Clang 16.0.6 with MSVC-like command-line
- Build fails on STL
static_assertthat checks that the Clang version>= 17.0.0
In file included from C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.40.33807\include\concepts:8:
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.40.33807\include\yvals_core.h(898,1): error: static assertion failed: error STL1000: Unexpected compiler version, expected Clang 17.0.0 or newer.
_EMIT_STL_ERROR(STL1000, "Unexpected compiler version, expected Clang 17.0.0 or newer.");
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.40.33807\include\yvals_core.h(519,44): note: expanded from macro '_EMIT_STL_ERROR'
#define _EMIT_STL_ERROR(NUMBER, MESSAGE) static_assert(false, "error " #NUMBER ": " MESSAGE)
^ ~~~~~
Repro steps
- Create GitHub Action with
windows-latest - Create simple C++-20 program that uses modern STL features:
#include <concepts>
namespace {
struct C{};
template <typename T> concept is_c = std::same_as<T, C>;
static_assert<is_c<C>>;
} // namespace
int main() {
C c;
return 0;
}- compile with
clang-cl - build fails
logdog16, grafikrobot and mxschmitt
Metadata
Metadata
Assignees
Labels
Area: ClangOS: Windowsawaiting-deploymentCode complete; awaiting deployment and/or deployment in progressCode complete; awaiting deployment and/or deployment in progressbug report