Visual Studio warning level meanings?

假装没事ソ 提交于 2019-11-28 07:06:56
mwigdahl

This link shows you the definitions of the warning levels (I'm assuming you are using C# code in your web project). Level 4 is the most strict.


  • 0: Turns off emission of all warning messages.
  • 1: Displays severe warning messages.
  • 2: Displays level 1 warnings plus certain, less-severe warnings, such as warnings about hiding class members.
  • 3: Displays level 2 warnings plus certain, less-severe warnings, such as warnings about expressions that always evaluate to true or false.
  • 4: Displays all level 3 warnings plus informational warnings. This is the default warning level at the command line.

Higher is stricter. It can be annoying to see all the warnings that may or may not mean much to your app, but taking the time to clear them up can teach you a lot.

You can check Microsoft's levels here. Level 0 is essentially none while level 4 will be the most strict.

Adrian Grigore

0 turns off warnings completely, while 4 is the most verbose level. See the documentation here which has the same warning levels.

Additionally, F# goes up to Warning Level 5:

--warn:warning-level

Sets a warning level (0 to 5). The default level is 3. Each warning is given a level based on its severity. Level 5 gives more, but less severe, warnings than level 1.

Level 5 warnings are: 21 (recursive use checked at runtime), 22 (let rec evaluated out of order), 45 (full abstraction), and 52 (defensive copy)

https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/compiler-options

For example setting a warning level to 4 or /W4 means the compiler will treat all warnings as errors. It's mostly how the compiler reacts when it sees something that it doesn't feel good about. And, by the way, a level of 0 turns of all warnings.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!