As far as I can tell this is a regression.
After including C++17 in the build configuration it shouldn't be hidden in the .vcxproj?
<?xml version="1.0" encoding="utf-8" ?> <Configuration xmlns="https://www.unrealengine.com/BuildConfiguration"> <BuildConfiguration> <CppStandard>Cpp17</CppStandard> </BuildConfiguration> </Configuration>
Expected Results:
Generated .vcxproj file should look this way:
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Development_Editor|x64'"> ... <AdditionalOptions>/std:c++17</AdditionalOptions> </PropertyGroup> <ItemGroup> <ClCompile Include="..\..\Source\RollingGame27\MyActor.cpp"> ... <AdditionalOptions>$(AdditionalOptions) /Yu"$(SolutionDir)Intermediate\Build\Win64\RollingGame27Editor\Development\Engine\SharedPCH.Engine.ShadowErrors.h"</AdditionalOptions> </ClCompile> </ItemGroup>
or
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Development_Editor|x64'"> ... <AdditionalOptions>/std:c++17</AdditionalOptions> </PropertyGroup> <ItemGroup> <ClCompile Include="..\..\Source\RollingGame27\MyActor.cpp"> ... <AdditionalOptions>/std:c++17 /Yu"$(SolutionDir)Intermediate\Build\Win64\RollingGame27Editor\Development\Engine\SharedPCH.Engine.ShadowErrors.h"</AdditionalOptions> </ClCompile> </ItemGroup>
Actual Results:
Generated .vcxproj file contains following code:
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Development_Editor|x64'"> ... <AdditionalOptions>/std:c++17</AdditionalOptions> </PropertyGroup> <ItemGroup> <ClCompile Include="..\..\Source\RollingGame27\MyActor.cpp"> ... <AdditionalOptions>/Yu"$(SolutionDir)Intermediate\Build\Win64\RollingGame27Editor\Development\Engine\SharedPCH.Engine.ShadowErrors.h"</AdditionalOptions> </ClCompile> </ItemGroup>
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-137267 in the post.
1 |
Component | UE - Foundation - Cpp Tools |
---|---|
Affects Versions | 4.27 |
Target Fix | 5.0 |
Created | Dec 10, 2021 |
---|---|
Resolved | Jan 13, 2022 |
Updated | Jan 26, 2023 |