Skip to content

Commit 1e05a21

Browse files
committed
Handle fatalwarnings for specific warnings (not 'All') for visual studio with clang (#2529)
1 parent a5990f6 commit 1e05a21

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

modules/vstudio/tests/vc2019/test_compile_settings.lua

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -209,3 +209,20 @@
209209
<AdditionalOptions>-Wno-disable %(AdditionalOptions)</AdditionalOptions>
210210
]]
211211
end
212+
213+
--
214+
-- Fatal specific warnings.
215+
--
216+
217+
function suite.disableSpecificWarningsWithClang()
218+
fatalwarnings { "disable" }
219+
toolset "clang"
220+
prepare()
221+
test.capture [[
222+
<ClCompile>
223+
<PrecompiledHeader>NotUsing</PrecompiledHeader>
224+
<WarningLevel>Level3</WarningLevel>
225+
<Optimization>Disabled</Optimization>
226+
<AdditionalOptions>-Werror=disable %(AdditionalOptions)</AdditionalOptions>
227+
]]
228+
end

modules/vstudio/vs2010_vcxproj.lua

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2162,6 +2162,7 @@
21622162
table.insert(opts, 1, '/Zp' .. tostring(cfg.structmemberalign))
21632163
end
21642164
opts = table.join(opts, table.translate(cfg.disablewarnings, function(disable) return '-Wno-' .. disable end))
2165+
opts = table.join(opts, table.translate(p.filterFatalWarnings(cfg.fatalwarnings), function(disable) return '-Werror=' .. disable end))
21652166
end
21662167

21672168
if #opts > 0 then

0 commit comments

Comments
 (0)