Skip to content

Commit bb93bbc

Browse files
committed
Enable enablewarnings for visual studio
1 parent 3712dbd commit bb93bbc

File tree

2 files changed

+31
-0
lines changed

2 files changed

+31
-0
lines changed

modules/vstudio/tests/vc2019/test_compile_settings.lua

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -226,3 +226,32 @@
226226
<AdditionalOptions>-Werror=disable %(AdditionalOptions)</AdditionalOptions>
227227
]]
228228
end
229+
230+
--
231+
-- Enable specific warnings.
232+
--
233+
234+
function suite.enableSpecificWarnings()
235+
enablewarnings { "0000" }
236+
prepare()
237+
test.capture [[
238+
<ClCompile>
239+
<PrecompiledHeader>NotUsing</PrecompiledHeader>
240+
<WarningLevel>Level3</WarningLevel>
241+
<Optimization>Disabled</Optimization>
242+
<AdditionalOptions>/w10000 %(AdditionalOptions)</AdditionalOptions>
243+
]]
244+
end
245+
246+
function suite.enableSpecificWarningsWithClang()
247+
enablewarnings { "disable" }
248+
toolset "clang"
249+
prepare()
250+
test.capture [[
251+
<ClCompile>
252+
<PrecompiledHeader>NotUsing</PrecompiledHeader>
253+
<WarningLevel>Level3</WarningLevel>
254+
<Optimization>Disabled</Optimization>
255+
<AdditionalOptions>-Wdisable %(AdditionalOptions)</AdditionalOptions>
256+
]]
257+
end

modules/vstudio/vs2010_vcxproj.lua

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2150,6 +2150,7 @@
21502150
if cfg.toolset and cfg.toolset:startswith("msc") then
21512151
local value = iif(cfg.unsignedchar, "On", "Off")
21522152
table.insert(opts, p.tools.msc.shared.unsignedchar[value])
2153+
opts = table.join(opts, table.translate(cfg.enablewarnings, function(enable) return '/w1' .. enable end))
21532154
elseif _ACTION >= "vs2019" and cfg.toolset and cfg.toolset == "clang" then
21542155
local value = iif(cfg.unsignedchar, "On", "Off")
21552156
table.insert(opts, p.tools.msc.shared.unsignedchar[value])
@@ -2163,6 +2164,7 @@
21632164
end
21642165
opts = table.join(opts, table.translate(cfg.disablewarnings, function(disable) return '-Wno-' .. disable end))
21652166
opts = table.join(opts, table.translate(p.filterFatalWarnings(cfg.fatalwarnings), function(disable) return '-Werror=' .. disable end))
2167+
opts = table.join(opts, table.translate(cfg.enablewarnings, function(enable) return '-W' .. enable end))
21662168
end
21672169

21682170
if #opts > 0 then

0 commit comments

Comments
 (0)