Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

how can i suppress all compiler and code analysis warnings from msbuild at the command line?

Tags:

msbuild

This has been asked, but wasn't answered. The answer (use /warn:1) doesn't work for msbuild.exe, only csc.exe. Perhaps I'm missing something between csc and msbuild?

I'd like to suppress all compiler warnings and code analysis warnings (e.g. "The variable 'variableNameHere' is assigned but its value ..." or Code Analysis Warning : CA1805 : Microsoft.Performance : ...) when I'm using command line msbuild. I don't want to alter the solution file. There are several hundred warning messages in the very large solution that I'm building -- fixing them is far out of scope for my project.

I tried /v:quiet but that didn't work.

Is there any way to do this via the command line?

Update: this:

C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe C:\Dev\ReallyBigSolution.sln /p:NoWarn=true /p:NoWarn=CA1031

Absolutely doesn't work. I still get hundreds of warnings, including the one I specifically blocked (CA1031).

Using /p:RunCodeAnalysis=Never or /p:RunCodeAnalysis=false apparently doesn't suppress code analysis warnings or errors.

like image 507
jcollum Avatar asked Nov 30 '10 21:11

jcollum


People also ask

How do you suppress code Analysis warnings?

If you migrate a project to Visual Studio 2019, you might suddenly be faced with a large number of code analysis warnings. If you aren't ready to fix the warnings, you can suppress all of them by selecting Analyze > Build and Suppress Active Issues.

How do I turn off compiler warning?

Turn off the warning for a project in Visual StudioSelect the Configuration Properties > C/C++ > Advanced property page. Edit the Disable Specific Warnings property to add 4996 . Choose OK to apply your changes.

How do you stop warnings in Cmake?

Use -Wno-dev to suppress it. You can disable the warning like this when you are configuring your build.


2 Answers

Can use nowarn flag on the compiler, which corresponds to <NoWarn> property in the .csproj file. So maybe msbuild /p:NoWarn="37;68" will turn off those warning numbers (haven't tried it).

Or use

http://msdn.microsoft.com/en-us/library/13b90fz7.aspx

to turn off warnings altogether. I don't know the property name offhand, try /p:Warn=0.

Edit: read the comments toward the end; seems like really getting rid of all these warnings isn't possible.

like image 59
Brian Avatar answered Sep 18 '22 03:09

Brian


I know this is an old post but it got me on the right track and by adding the following to my msbuild call it suppressed all of the warnings and output as it built the project. I have this in a batch file so the only output I get I believe are the end results and any messages I prompt with echo. The secret was in the /clp switch. So I looked that up and put in all of the ones that supress output. Each one got rid of more but there were still the yellow warnings coming up and when I added the ErrorsOnly switch, there was no more output.

call msbuild /clp:NoSummary;NoItemAndPropertyList;ErrorsOnly /verbosity:quiet /nologo
like image 45
Shane Fowler Avatar answered Sep 18 '22 03:09

Shane Fowler