1[
2  {
3    "name": "DebugInformationFormat",
4    "switch": "",
5    "comment": "None",
6    "value": "None",
7    "flags": []
8  },
9  {
10    "name": "DebugInformationFormat",
11    "switch": "Z7",
12    "comment": "C7 compatible",
13    "value": "OldStyle",
14    "flags": []
15  },
16  {
17    "name": "DebugInformationFormat",
18    "switch": "Zi",
19    "comment": "Program Database",
20    "value": "ProgramDatabase",
21    "flags": []
22  },
23  {
24    "name": "DebugInformationFormat",
25    "switch": "ZI",
26    "comment": "Program Database for Edit And Continue",
27    "value": "EditAndContinue",
28    "flags": []
29  },
30  {
31    "name": "CompileAsManaged",
32    "switch": "",
33    "comment": "No Common Language RunTime Support",
34    "value": "false",
35    "flags": []
36  },
37  {
38    "name": "CompileAsManaged",
39    "switch": "clr",
40    "comment": "Common Language RunTime Support",
41    "value": "true",
42    "flags": []
43  },
44  {
45    "name": "CompileAsManaged",
46    "switch": "clr:pure",
47    "comment": "Pure MSIL Common Language RunTime Support",
48    "value": "Pure",
49    "flags": []
50  },
51  {
52    "name": "CompileAsManaged",
53    "switch": "clr:safe",
54    "comment": "Safe MSIL Common Language RunTime Support",
55    "value": "Safe",
56    "flags": []
57  },
58  {
59    "name": "WarningLevel",
60    "switch": "W0",
61    "comment": "Turn Off All Warnings",
62    "value": "TurnOffAllWarnings",
63    "flags": []
64  },
65  {
66    "name": "WarningLevel",
67    "switch": "W1",
68    "comment": "Level1",
69    "value": "Level1",
70    "flags": []
71  },
72  {
73    "name": "WarningLevel",
74    "switch": "W2",
75    "comment": "Level2",
76    "value": "Level2",
77    "flags": []
78  },
79  {
80    "name": "WarningLevel",
81    "switch": "W3",
82    "comment": "Level3",
83    "value": "Level3",
84    "flags": []
85  },
86  {
87    "name": "WarningLevel",
88    "switch": "W4",
89    "comment": "Level4",
90    "value": "Level4",
91    "flags": []
92  },
93  {
94    "name": "WarningLevel",
95    "switch": "Wall",
96    "comment": "EnableAllWarnings",
97    "value": "EnableAllWarnings",
98    "flags": []
99  },
100  {
101    "name": "DiagnosticsFormat",
102    "switch": "diagnostics:caret",
103    "comment": "Caret",
104    "value": "Caret",
105    "flags": []
106  },
107  {
108    "name": "DiagnosticsFormat",
109    "switch": "diagnostics:column",
110    "comment": "Column Info",
111    "value": "Column",
112    "flags": []
113  },
114  {
115    "name": "DiagnosticsFormat",
116    "switch": "diagnostics:classic",
117    "comment": "Classic",
118    "value": "Classic",
119    "flags": []
120  },
121  {
122    "name": "Optimization",
123    "switch": "",
124    "comment": "Custom",
125    "value": "Custom",
126    "flags": []
127  },
128  {
129    "name": "Optimization",
130    "switch": "Od",
131    "comment": "Disabled",
132    "value": "Disabled",
133    "flags": []
134  },
135  {
136    "name": "Optimization",
137    "switch": "O1",
138    "comment": "Maximum Optimization (Favor Size)",
139    "value": "MinSpace",
140    "flags": []
141  },
142  {
143    "name": "Optimization",
144    "switch": "O2",
145    "comment": "Maximum Optimization (Favor Speed)",
146    "value": "MaxSpeed",
147    "flags": []
148  },
149  {
150    "name": "Optimization",
151    "switch": "Ox",
152    "comment": "Optimizations (Favor Speed)",
153    "value": "Full",
154    "flags": []
155  },
156  {
157    "name": "InlineFunctionExpansion",
158    "switch": "",
159    "comment": "Default",
160    "value": "Default",
161    "flags": []
162  },
163  {
164    "name": "InlineFunctionExpansion",
165    "switch": "Ob0",
166    "comment": "Disabled",
167    "value": "Disabled",
168    "flags": []
169  },
170  {
171    "name": "InlineFunctionExpansion",
172    "switch": "Ob1",
173    "comment": "Only __inline",
174    "value": "OnlyExplicitInline",
175    "flags": []
176  },
177  {
178    "name": "InlineFunctionExpansion",
179    "switch": "Ob2",
180    "comment": "Any Suitable",
181    "value": "AnySuitable",
182    "flags": []
183  },
184  {
185    "name": "FavorSizeOrSpeed",
186    "switch": "Os",
187    "comment": "Favor small code",
188    "value": "Size",
189    "flags": []
190  },
191  {
192    "name": "FavorSizeOrSpeed",
193    "switch": "Ot",
194    "comment": "Favor fast code",
195    "value": "Speed",
196    "flags": []
197  },
198  {
199    "name": "FavorSizeOrSpeed",
200    "switch": "",
201    "comment": "Neither",
202    "value": "Neither",
203    "flags": []
204  },
205  {
206    "name": "ExceptionHandling",
207    "switch": "EHa",
208    "comment": "Yes with SEH Exceptions",
209    "value": "Async",
210    "flags": []
211  },
212  {
213    "name": "ExceptionHandling",
214    "switch": "EHsc",
215    "comment": "Yes",
216    "value": "Sync",
217    "flags": []
218  },
219  {
220    "name": "ExceptionHandling",
221    "switch": "EHs",
222    "comment": "Yes with Extern C functions",
223    "value": "SyncCThrow",
224    "flags": []
225  },
226  {
227    "name": "ExceptionHandling",
228    "switch": "",
229    "comment": "No",
230    "value": "false",
231    "flags": []
232  },
233  {
234    "name": "BasicRuntimeChecks",
235    "switch": "RTCs",
236    "comment": "Stack Frames",
237    "value": "StackFrameRuntimeCheck",
238    "flags": []
239  },
240  {
241    "name": "BasicRuntimeChecks",
242    "switch": "RTCu",
243    "comment": "Uninitialized variables",
244    "value": "UninitializedLocalUsageCheck",
245    "flags": []
246  },
247  {
248    "name": "BasicRuntimeChecks",
249    "switch": "RTC1",
250    "comment": "Both (/RTC1, equiv. to /RTCsu)",
251    "value": "EnableFastChecks",
252    "flags": []
253  },
254  {
255    "name": "BasicRuntimeChecks",
256    "switch": "",
257    "comment": "Default",
258    "value": "Default",
259    "flags": []
260  },
261  {
262    "name": "RuntimeLibrary",
263    "switch": "MT",
264    "comment": "Multi-threaded",
265    "value": "MultiThreaded",
266    "flags": []
267  },
268  {
269    "name": "RuntimeLibrary",
270    "switch": "MTd",
271    "comment": "Multi-threaded Debug",
272    "value": "MultiThreadedDebug",
273    "flags": []
274  },
275  {
276    "name": "RuntimeLibrary",
277    "switch": "MD",
278    "comment": "Multi-threaded DLL",
279    "value": "MultiThreadedDLL",
280    "flags": []
281  },
282  {
283    "name": "RuntimeLibrary",
284    "switch": "MDd",
285    "comment": "Multi-threaded Debug DLL",
286    "value": "MultiThreadedDebugDLL",
287    "flags": []
288  },
289  {
290    "name": "StructMemberAlignment",
291    "switch": "Zp1",
292    "comment": "1 Byte",
293    "value": "1Byte",
294    "flags": []
295  },
296  {
297    "name": "StructMemberAlignment",
298    "switch": "Zp2",
299    "comment": "2 Bytes",
300    "value": "2Bytes",
301    "flags": []
302  },
303  {
304    "name": "StructMemberAlignment",
305    "switch": "Zp4",
306    "comment": "4 Byte",
307    "value": "4Bytes",
308    "flags": []
309  },
310  {
311    "name": "StructMemberAlignment",
312    "switch": "Zp8",
313    "comment": "8 Bytes",
314    "value": "8Bytes",
315    "flags": []
316  },
317  {
318    "name": "StructMemberAlignment",
319    "switch": "Zp16",
320    "comment": "16 Bytes",
321    "value": "16Bytes",
322    "flags": []
323  },
324  {
325    "name": "StructMemberAlignment",
326    "switch": "",
327    "comment": "Default",
328    "value": "Default",
329    "flags": []
330  },
331  {
332    "name": "BufferSecurityCheck",
333    "switch": "GS-",
334    "comment": "Disable Security Check",
335    "value": "false",
336    "flags": []
337  },
338  {
339    "name": "BufferSecurityCheck",
340    "switch": "GS",
341    "comment": "Enable Security Check",
342    "value": "true",
343    "flags": []
344  },
345  {
346    "name": "ControlFlowGuard",
347    "switch": "guard:cf",
348    "comment": "Yes",
349    "value": "Guard",
350    "flags": []
351  },
352  {
353    "name": "ControlFlowGuard",
354    "switch": "",
355    "comment": "No",
356    "value": "false",
357    "flags": []
358  },
359  {
360    "name": "EnableEnhancedInstructionSet",
361    "switch": "arch:SSE",
362    "comment": "Streaming SIMD Extensions",
363    "value": "StreamingSIMDExtensions",
364    "flags": []
365  },
366  {
367    "name": "EnableEnhancedInstructionSet",
368    "switch": "arch:SSE2",
369    "comment": "Streaming SIMD Extensions 2",
370    "value": "StreamingSIMDExtensions2",
371    "flags": []
372  },
373  {
374    "name": "EnableEnhancedInstructionSet",
375    "switch": "arch:AVX",
376    "comment": "Advanced Vector Extensions",
377    "value": "AdvancedVectorExtensions",
378    "flags": []
379  },
380  {
381    "name": "EnableEnhancedInstructionSet",
382    "switch": "arch:AVX2",
383    "comment": "Advanced Vector Extensions 2",
384    "value": "AdvancedVectorExtensions2",
385    "flags": []
386  },
387  {
388    "name": "EnableEnhancedInstructionSet",
389    "switch": "arch:AVX512",
390    "comment": "Advanced Vector Extensions 512",
391    "value": "AdvancedVectorExtensions512",
392    "flags": []
393  },
394  {
395    "name": "EnableEnhancedInstructionSet",
396    "switch": "arch:IA32",
397    "comment": "No Enhanced Instructions",
398    "value": "NoExtensions",
399    "flags": []
400  },
401  {
402    "name": "EnableEnhancedInstructionSet",
403    "switch": "",
404    "comment": "Not Set",
405    "value": "NotSet",
406    "flags": []
407  },
408  {
409    "name": "FloatingPointModel",
410    "switch": "fp:precise",
411    "comment": "Precise",
412    "value": "Precise",
413    "flags": []
414  },
415  {
416    "name": "FloatingPointModel",
417    "switch": "fp:strict",
418    "comment": "Strict",
419    "value": "Strict",
420    "flags": []
421  },
422  {
423    "name": "FloatingPointModel",
424    "switch": "fp:fast",
425    "comment": "Fast",
426    "value": "Fast",
427    "flags": []
428  },
429  {
430    "name": "SpectreMitigation",
431    "switch": "Qspectre-load-cf",
432    "comment": "All Control Flow Loads",
433    "value": "SpectreLoadCF",
434    "flags": []
435  },
436  {
437    "name": "SpectreMitigation",
438    "switch": "Qspectre-load",
439    "comment": "All Loads",
440    "value": "SpectreLoad",
441    "flags": []
442  },
443  {
444    "name": "SpectreMitigation",
445    "switch": "Qspectre-",
446    "comment": "Disabled",
447    "value": "false",
448    "flags": []
449  },
450  {
451    "name": "SpectreMitigation",
452    "switch": "Qspectre",
453    "comment": "Enabled",
454    "value": "Spectre",
455    "flags": []
456  },
457  {
458    "name": "ConformanceMode",
459    "switch": "permissive-",
460    "comment": "Yes",
461    "value": "true",
462    "flags": []
463  },
464  {
465    "name": "ConformanceMode",
466    "switch": "permissive",
467    "comment": "No",
468    "value": "false",
469    "flags": []
470  },
471  {
472    "name": "LanguageStandard",
473    "switch": "std:c++14",
474    "comment": "ISO C++14 Standard",
475    "value": "stdcpp14",
476    "flags": []
477  },
478  {
479    "name": "LanguageStandard",
480    "switch": "std:c++17",
481    "comment": "ISO C++17 Standard",
482    "value": "stdcpp17",
483    "flags": []
484  },
485  {
486    "name": "LanguageStandard",
487    "switch": "std:c++20",
488    "comment": "ISO C++20 Standard",
489    "value": "stdcpp20",
490    "flags": []
491  },
492  {
493    "name": "LanguageStandard",
494    "switch": "std:c++latest",
495    "comment": "Preview - Features from the Latest C++ Working Draft",
496    "value": "stdcpplatest",
497    "flags": []
498  },
499  {
500    "name": "LanguageStandard_C",
501    "switch": "std:c11",
502    "comment": "ISO C11 Standard",
503    "value": "stdc11",
504    "flags": []
505  },
506  {
507    "name": "LanguageStandard_C",
508    "switch": "std:c17",
509    "comment": "ISO C17 (2018) Standard",
510    "value": "stdc17",
511    "flags": []
512  },
513  {
514    "name": "PrecompiledHeader",
515    "switch": "Yc",
516    "comment": "Create",
517    "value": "Create",
518    "flags": [
519      "UserValue",
520      "UserIgnored",
521      "Continue"
522    ]
523  },
524  {
525    "name": "PrecompiledHeader",
526    "switch": "Yu",
527    "comment": "Use",
528    "value": "Use",
529    "flags": [
530      "UserValue",
531      "UserIgnored",
532      "Continue"
533    ]
534  },
535  {
536    "name": "PrecompiledHeader",
537    "switch": "Y-",
538    "comment": "Not Using Precompiled Headers",
539    "value": "NotUsing",
540    "flags": []
541  },
542  {
543    "name": "AssemblerOutput",
544    "switch": "",
545    "comment": "No Listing",
546    "value": "NoListing",
547    "flags": []
548  },
549  {
550    "name": "AssemblerOutput",
551    "switch": "FA",
552    "comment": "Assembly-Only Listing",
553    "value": "AssemblyCode",
554    "flags": []
555  },
556  {
557    "name": "AssemblerOutput",
558    "switch": "FAc",
559    "comment": "Assembly With Machine Code",
560    "value": "AssemblyAndMachineCode",
561    "flags": []
562  },
563  {
564    "name": "AssemblerOutput",
565    "switch": "FAs",
566    "comment": "Assembly With Source Code",
567    "value": "AssemblyAndSourceCode",
568    "flags": []
569  },
570  {
571    "name": "AssemblerOutput",
572    "switch": "FAcs",
573    "comment": "Assembly, Machine Code and Source",
574    "value": "All",
575    "flags": []
576  },
577  {
578    "name": "ExternalWarningLevel",
579    "switch": "external:W0",
580    "comment": "Turn Off All Warnings",
581    "value": "TurnOffAllWarnings",
582    "vsmin": "16.10.31321.278",
583    "flags": []
584  },
585  {
586    "name": "ExternalWarningLevel",
587    "switch": "external:W1",
588    "comment": "Level1",
589    "value": "Level1",
590    "vsmin": "16.10.31321.278",
591    "flags": []
592  },
593  {
594    "name": "ExternalWarningLevel",
595    "switch": "external:W2",
596    "comment": "Level2",
597    "value": "Level2",
598    "vsmin": "16.10.31321.278",
599    "flags": []
600  },
601  {
602    "name": "ExternalWarningLevel",
603    "switch": "external:W3",
604    "comment": "Level3",
605    "value": "Level3",
606    "vsmin": "16.10.31321.278",
607    "flags": []
608  },
609  {
610    "name": "ExternalWarningLevel",
611    "switch": "external:W4",
612    "comment": "Level4",
613    "value": "Level4",
614    "vsmin": "16.10.31321.278",
615    "flags": []
616  },
617  {
618    "name": "CallingConvention",
619    "switch": "Gd",
620    "comment": "__cdecl",
621    "value": "Cdecl",
622    "flags": []
623  },
624  {
625    "name": "CallingConvention",
626    "switch": "Gr",
627    "comment": "__fastcall",
628    "value": "FastCall",
629    "flags": []
630  },
631  {
632    "name": "CallingConvention",
633    "switch": "Gz",
634    "comment": "__stdcall",
635    "value": "StdCall",
636    "flags": []
637  },
638  {
639    "name": "CallingConvention",
640    "switch": "Gv",
641    "comment": "__vectorcall",
642    "value": "VectorCall",
643    "flags": []
644  },
645  {
646    "name": "CompileAs",
647    "switch": "",
648    "comment": "Default",
649    "value": "Default",
650    "flags": []
651  },
652  {
653    "name": "CompileAs",
654    "switch": "TC",
655    "comment": "Compile as C Code",
656    "value": "CompileAsC",
657    "flags": []
658  },
659  {
660    "name": "CompileAs",
661    "switch": "TP",
662    "comment": "Compile as C++ Code",
663    "value": "CompileAsCpp",
664    "flags": []
665  },
666  {
667    "name": "ErrorReporting",
668    "switch": "errorReport:none",
669    "comment": "Do Not Send Report",
670    "value": "None",
671    "flags": []
672  },
673  {
674    "name": "ErrorReporting",
675    "switch": "errorReport:prompt",
676    "comment": "Prompt Immediately",
677    "value": "Prompt",
678    "flags": []
679  },
680  {
681    "name": "ErrorReporting",
682    "switch": "errorReport:queue",
683    "comment": "Queue For Next Login",
684    "value": "Queue",
685    "flags": []
686  },
687  {
688    "name": "ErrorReporting",
689    "switch": "errorReport:send",
690    "comment": "Send Automatically",
691    "value": "Send",
692    "flags": []
693  },
694  {
695    "name": "SupportJustMyCode",
696    "switch": "JMC-",
697    "comment": "Support Just My Code Debugging",
698    "value": "false",
699    "flags": []
700  },
701  {
702    "name": "SupportJustMyCode",
703    "switch": "JMC",
704    "comment": "Support Just My Code Debugging",
705    "value": "true",
706    "flags": []
707  },
708  {
709    "name": "CompileAsWinRT",
710    "switch": "ZW",
711    "comment": "Consume Windows Runtime Extension",
712    "value": "true",
713    "flags": []
714  },
715  {
716    "name": "WinRTNoStdLib",
717    "switch": "ZW:nostdlib",
718    "comment": "No Standard WinRT Libraries",
719    "value": "true",
720    "flags": []
721  },
722  {
723    "name": "SuppressStartupBanner",
724    "switch": "nologo",
725    "comment": "Suppress Startup Banner",
726    "value": "true",
727    "flags": []
728  },
729  {
730    "name": "TreatWarningAsError",
731    "switch": "WX-",
732    "comment": "Treat Warnings As Errors",
733    "value": "false",
734    "flags": []
735  },
736  {
737    "name": "TreatWarningAsError",
738    "switch": "WX",
739    "comment": "Treat Warnings As Errors",
740    "value": "true",
741    "flags": []
742  },
743  {
744    "name": "SDLCheck",
745    "switch": "sdl-",
746    "comment": "SDL checks",
747    "value": "false",
748    "flags": []
749  },
750  {
751    "name": "SDLCheck",
752    "switch": "sdl",
753    "comment": "SDL checks",
754    "value": "true",
755    "flags": []
756  },
757  {
758    "name": "MultiProcessorCompilation",
759    "switch": "MP",
760    "comment": "Multi-processor Compilation",
761    "value": "true",
762    "flags": [
763      "UserValue",
764      "UserIgnored",
765      "Continue"
766    ]
767  },
768  {
769    "name": "IntrinsicFunctions",
770    "switch": "Oi",
771    "comment": "Enable Intrinsic Functions",
772    "value": "true",
773    "flags": []
774  },
775  {
776    "name": "OmitFramePointers",
777    "switch": "Oy-",
778    "comment": "Omit Frame Pointers",
779    "value": "false",
780    "flags": []
781  },
782  {
783    "name": "OmitFramePointers",
784    "switch": "Oy",
785    "comment": "Omit Frame Pointers",
786    "value": "true",
787    "flags": []
788  },
789  {
790    "name": "EnableFiberSafeOptimizations",
791    "switch": "GT",
792    "comment": "Enable Fiber-Safe Optimizations",
793    "value": "true",
794    "flags": []
795  },
796  {
797    "name": "WholeProgramOptimization",
798    "switch": "GL",
799    "comment": "Whole Program Optimization",
800    "value": "true",
801    "flags": []
802  },
803  {
804    "name": "UndefineAllPreprocessorDefinitions",
805    "switch": "u",
806    "comment": "Undefine All Preprocessor Definitions",
807    "value": "true",
808    "flags": []
809  },
810  {
811    "name": "IgnoreStandardIncludePath",
812    "switch": "X",
813    "comment": "Ignore Standard Include Paths",
814    "value": "true",
815    "flags": []
816  },
817  {
818    "name": "PreprocessToFile",
819    "switch": "P",
820    "comment": "Preprocess to a File",
821    "value": "true",
822    "flags": []
823  },
824  {
825    "name": "PreprocessSuppressLineNumbers",
826    "switch": "EP",
827    "comment": "Preprocess Suppress Line Numbers",
828    "value": "true",
829    "flags": []
830  },
831  {
832    "name": "PreprocessKeepComments",
833    "switch": "C",
834    "comment": "Keep Comments",
835    "value": "true",
836    "flags": []
837  },
838  {
839    "name": "UseStandardPreprocessor",
840    "switch": "Zc:preprocessor-",
841    "comment": "Use Standard Conforming Preprocessor",
842    "value": "false",
843    "flags": []
844  },
845  {
846    "name": "UseStandardPreprocessor",
847    "switch": "Zc:preprocessor",
848    "comment": "Use Standard Conforming Preprocessor",
849    "value": "true",
850    "flags": []
851  },
852  {
853    "name": "StringPooling",
854    "switch": "GF-",
855    "comment": "Enable String Pooling",
856    "value": "false",
857    "flags": []
858  },
859  {
860    "name": "StringPooling",
861    "switch": "GF",
862    "comment": "Enable String Pooling",
863    "value": "true",
864    "flags": []
865  },
866  {
867    "name": "MinimalRebuild",
868    "switch": "Gm-",
869    "comment": "Enable Minimal Rebuild",
870    "value": "false",
871    "flags": []
872  },
873  {
874    "name": "MinimalRebuild",
875    "switch": "Gm",
876    "comment": "Enable Minimal Rebuild",
877    "value": "true",
878    "flags": []
879  },
880  {
881    "name": "SmallerTypeCheck",
882    "switch": "RTCc",
883    "comment": "Smaller Type Check",
884    "value": "true",
885    "flags": []
886  },
887  {
888    "name": "FunctionLevelLinking",
889    "switch": "Gy-",
890    "comment": "Enable Function-Level Linking",
891    "value": "false",
892    "flags": []
893  },
894  {
895    "name": "FunctionLevelLinking",
896    "switch": "Gy",
897    "comment": "Enable Function-Level Linking",
898    "value": "true",
899    "flags": []
900  },
901  {
902    "name": "EnableParallelCodeGeneration",
903    "switch": "Qpar-",
904    "comment": "Enable Parallel Code Generation",
905    "value": "false",
906    "flags": []
907  },
908  {
909    "name": "EnableParallelCodeGeneration",
910    "switch": "Qpar",
911    "comment": "Enable Parallel Code Generation",
912    "value": "true",
913    "flags": []
914  },
915  {
916    "name": "FloatingPointExceptions",
917    "switch": "fp:except-",
918    "comment": "Enable Floating Point Exceptions",
919    "value": "false",
920    "flags": []
921  },
922  {
923    "name": "FloatingPointExceptions",
924    "switch": "fp:except",
925    "comment": "Enable Floating Point Exceptions",
926    "value": "true",
927    "flags": []
928  },
929  {
930    "name": "CreateHotpatchableImage",
931    "switch": "hotpatch",
932    "comment": "Create Hotpatchable Image",
933    "value": "true",
934    "flags": []
935  },
936  {
937    "name": "IntelJCCErratum",
938    "switch": "QIntel-jcc-erratum",
939    "comment": "Enable Intel JCC Erratum Mitigation",
940    "value": "true",
941    "flags": []
942  },
943  {
944    "name": "GuardEHContMetadata",
945    "switch": "guard:ehcont-",
946    "comment": "Enable EH Continuation Metadata",
947    "value": "false",
948    "flags": []
949  },
950  {
951    "name": "GuardEHContMetadata",
952    "switch": "guard:ehcont",
953    "comment": "Enable EH Continuation Metadata",
954    "value": "true",
955    "flags": []
956  },
957  {
958    "name": "GuardSignedReturns",
959    "switch": "guard:signret-",
960    "comment": "Enable Signed Returns",
961    "value": "false",
962    "flags": []
963  },
964  {
965    "name": "GuardSignedReturns",
966    "switch": "guard:signret",
967    "comment": "Enable Signed Returns",
968    "value": "true",
969    "flags": []
970  },
971  {
972    "name": "DisableLanguageExtensions",
973    "switch": "Za",
974    "comment": "Disable Language Extensions",
975    "value": "true",
976    "flags": []
977  },
978  {
979    "name": "TreatWChar_tAsBuiltInType",
980    "switch": "Zc:wchar_t-",
981    "comment": "Treat WChar_t As Built in Type",
982    "value": "false",
983    "flags": []
984  },
985  {
986    "name": "TreatWChar_tAsBuiltInType",
987    "switch": "Zc:wchar_t",
988    "comment": "Treat WChar_t As Built in Type",
989    "value": "true",
990    "flags": []
991  },
992  {
993    "name": "ForceConformanceInForLoopScope",
994    "switch": "Zc:forScope-",
995    "comment": "Force Conformance in For Loop Scope",
996    "value": "false",
997    "flags": []
998  },
999  {
1000    "name": "ForceConformanceInForLoopScope",
1001    "switch": "Zc:forScope",
1002    "comment": "Force Conformance in For Loop Scope",
1003    "value": "true",
1004    "flags": []
1005  },
1006  {
1007    "name": "RemoveUnreferencedCodeData",
1008    "switch": "Zc:inline-",
1009    "comment": "Remove unreferenced code and data",
1010    "value": "false",
1011    "flags": []
1012  },
1013  {
1014    "name": "RemoveUnreferencedCodeData",
1015    "switch": "Zc:inline",
1016    "comment": "Remove unreferenced code and data",
1017    "value": "true",
1018    "flags": []
1019  },
1020  {
1021    "name": "EnforceTypeConversionRules",
1022    "switch": "Zc:rvalueCast-",
1023    "comment": "Enforce type conversion rules",
1024    "value": "false",
1025    "flags": []
1026  },
1027  {
1028    "name": "EnforceTypeConversionRules",
1029    "switch": "Zc:rvalueCast",
1030    "comment": "Enforce type conversion rules",
1031    "value": "true",
1032    "flags": []
1033  },
1034  {
1035    "name": "RuntimeTypeInfo",
1036    "switch": "GR-",
1037    "comment": "Enable Run-Time Type Information",
1038    "value": "false",
1039    "flags": []
1040  },
1041  {
1042    "name": "RuntimeTypeInfo",
1043    "switch": "GR",
1044    "comment": "Enable Run-Time Type Information",
1045    "value": "true",
1046    "flags": []
1047  },
1048  {
1049    "name": "OpenMPSupport",
1050    "switch": "openmp-",
1051    "comment": "Open MP Support",
1052    "value": "false",
1053    "flags": []
1054  },
1055  {
1056    "name": "OpenMPSupport",
1057    "switch": "openmp",
1058    "comment": "Open MP Support",
1059    "value": "true",
1060    "flags": []
1061  },
1062  {
1063    "name": "EnableModules",
1064    "switch": "experimental:module",
1065    "comment": "Enable Experimental C++ Standard Library Modules",
1066    "value": "true",
1067    "flags": []
1068  },
1069  {
1070    "name": "ExpandAttributedSource",
1071    "switch": "Fx",
1072    "comment": "Expand Attributed Source",
1073    "value": "true",
1074    "flags": []
1075  },
1076  {
1077    "name": "UseUnicodeForAssemblerListing",
1078    "switch": "FAu",
1079    "comment": "Use Unicode For Assembler Listing",
1080    "value": "true",
1081    "flags": []
1082  },
1083  {
1084    "name": "GenerateModuleDependencies",
1085    "switch": "sourceDependencies:directives",
1086    "comment": "Generate Module Dependenices File",
1087    "value": "true",
1088    "flags": [
1089      "Continue"
1090    ]
1091  },
1092  {
1093    "name": "GenerateXMLDocumentationFiles",
1094    "switch": "doc",
1095    "comment": "Generate XML Documentation Files",
1096    "value": "true",
1097    "flags": [
1098      "UserValue",
1099      "UserIgnored",
1100      "Continue"
1101    ]
1102  },
1103  {
1104    "name": "GenerateSourceDependencies",
1105    "switch": "sourceDependencies",
1106    "comment": "Generate Source Dependencies File",
1107    "value": "true",
1108    "flags": [
1109      "Continue"
1110    ]
1111  },
1112  {
1113    "name": "BrowseInformation",
1114    "switch": "FR",
1115    "comment": "Enable Browse Information",
1116    "value": "true",
1117    "flags": [
1118      "UserValue",
1119      "UserIgnored",
1120      "Continue"
1121    ]
1122  },
1123  {
1124    "name": "TreatAngleIncludeAsExternal",
1125    "switch": "external:anglebrackets",
1126    "comment": "Treat Files Included with Angle Brackets as External",
1127    "value": "true",
1128    "vsmin": "16.10.31321.278",
1129    "flags": []
1130  },
1131  {
1132    "name": "ExternalTemplatesDiagnostics",
1133    "switch": "external:templates-",
1134    "comment": "Template Diagnostics in External Headers",
1135    "value": "true",
1136    "vsmin": "16.10.31321.278",
1137    "flags": []
1138  },
1139  {
1140    "name": "DisableAnalyzeExternal",
1141    "switch": "analyze:external-",
1142    "comment": "Disable Code Analysis for External Headers",
1143    "value": "true",
1144    "flags": []
1145  },
1146  {
1147    "name": "ShowIncludes",
1148    "switch": "showIncludes",
1149    "comment": "Show Includes",
1150    "value": "true",
1151    "flags": []
1152  },
1153  {
1154    "name": "EnablePREfast",
1155    "switch": "analyze-",
1156    "comment": "Enable Code Analysis",
1157    "value": "false",
1158    "flags": []
1159  },
1160  {
1161    "name": "EnablePREfast",
1162    "switch": "analyze",
1163    "comment": "Enable Code Analysis",
1164    "value": "true",
1165    "flags": []
1166  },
1167  {
1168    "name": "UseFullPaths",
1169    "switch": "FC",
1170    "comment": "Use Full Paths",
1171    "value": "true",
1172    "flags": []
1173  },
1174  {
1175    "name": "OmitDefaultLibName",
1176    "switch": "Zl",
1177    "comment": "Omit Default Library Name",
1178    "value": "true",
1179    "flags": []
1180  },
1181  {
1182    "name": "AdditionalIncludeDirectories",
1183    "switch": "I",
1184    "comment": "Additional Include Directories",
1185    "value": "",
1186    "flags": [
1187      "UserValue",
1188      "SemicolonAppendable"
1189    ]
1190  },
1191  {
1192    "name": "AdditionalUsingDirectories",
1193    "switch": "AI",
1194    "comment": "Additional #using Directories",
1195    "value": "",
1196    "flags": [
1197      "UserValue",
1198      "SemicolonAppendable"
1199    ]
1200  },
1201  {
1202    "name": "AdditionalBMIDirectories",
1203    "switch": "ifcSearchDir",
1204    "comment": "Additional BMI Directories",
1205    "value": "",
1206    "flags": [
1207      "UserValue",
1208      "SemicolonAppendable"
1209    ]
1210  },
1211  {
1212    "name": "AdditionalModuleDependencies",
1213    "switch": "reference",
1214    "comment": "Additional Module Dependencies",
1215    "value": "",
1216    "flags": [
1217      "UserFollowing",
1218      "SemicolonAppendable"
1219    ]
1220  },
1221  {
1222    "name": "AdditionalHeaderUnitDependencies",
1223    "switch": "headerUnit",
1224    "comment": "Additional Header Unit Dependencies",
1225    "value": "",
1226    "flags": [
1227      "UserFollowing",
1228      "SemicolonAppendable"
1229    ]
1230  },
1231  {
1232    "name": "PreprocessorDefinitions",
1233    "switch": "D",
1234    "comment": "Preprocessor Definitions",
1235    "value": "",
1236    "flags": [
1237      "UserValue",
1238      "SemicolonAppendable"
1239    ]
1240  },
1241  {
1242    "name": "UndefinePreprocessorDefinitions",
1243    "switch": "U",
1244    "comment": "Undefine Preprocessor Definitions",
1245    "value": "",
1246    "flags": [
1247      "UserValue",
1248      "SemicolonAppendable"
1249    ]
1250  },
1251  {
1252    "name": "StdIfcDirectory",
1253    "switch": "stdIfcDir",
1254    "comment": "",
1255    "value": "",
1256    "flags": [
1257      "UserValue",
1258      "SemicolonAppendable"
1259    ]
1260  },
1261  {
1262    "name": "ExternalDirectoriesEnv",
1263    "switch": "external:env:",
1264    "comment": "External Directories Environment Variables",
1265    "value": "",
1266    "vsmin": "16.10.31321.278",
1267    "flags": [
1268      "UserValue",
1269      "SemicolonAppendable"
1270    ]
1271  },
1272  {
1273    "name": "DisableSpecificWarnings",
1274    "switch": "wd",
1275    "comment": "Disable Specific Warnings",
1276    "value": "",
1277    "flags": [
1278      "UserValue",
1279      "SemicolonAppendable"
1280    ]
1281  },
1282  {
1283    "name": "ForcedIncludeFiles",
1284    "switch": "FI",
1285    "comment": "Forced Include File",
1286    "value": "",
1287    "flags": [
1288      "UserValue",
1289      "SemicolonAppendable"
1290    ]
1291  },
1292  {
1293    "name": "ForcedUsingFiles",
1294    "switch": "FU",
1295    "comment": "Forced #using File",
1296    "value": "",
1297    "flags": [
1298      "UserValue",
1299      "SemicolonAppendable"
1300    ]
1301  },
1302  {
1303    "name": "PREfastLog",
1304    "switch": "analyze:log",
1305    "comment": "Code Analysis Log",
1306    "value": "",
1307    "flags": [
1308      "UserFollowing"
1309    ]
1310  },
1311  {
1312    "name": "PREfastAdditionalPlugins",
1313    "switch": "analyze:plugin",
1314    "comment": "Additional Code Analysis Native plugins",
1315    "value": "",
1316    "flags": [
1317      "UserValue",
1318      "SemicolonAppendable"
1319    ]
1320  },
1321  {
1322    "name": "TreatSpecificWarningsAsErrors",
1323    "switch": "we",
1324    "comment": "Treat Specific Warnings As Errors",
1325    "value": "",
1326    "flags": [
1327      "UserValue",
1328      "SemicolonAppendable"
1329    ]
1330  },
1331  {
1332    "name": "WarningVersion",
1333    "switch": "Wv:",
1334    "comment": "Warning Version",
1335    "value": "",
1336    "flags": [
1337      "UserValue"
1338    ]
1339  },
1340  {
1341    "name": "PreprocessOutputPath",
1342    "switch": "Fi",
1343    "comment": "Preprocess Output Path",
1344    "value": "",
1345    "flags": [
1346      "UserValue"
1347    ]
1348  },
1349  {
1350    "name": "PrecompiledHeaderFile",
1351    "switch": "Yu",
1352    "comment": "Precompiled Header File",
1353    "value": "",
1354    "flags": [
1355      "UserValue",
1356      "UserRequired"
1357    ]
1358  },
1359  {
1360    "name": "PrecompiledHeaderFile",
1361    "switch": "Yc",
1362    "comment": "Precompiled Header File",
1363    "value": "",
1364    "flags": [
1365      "UserValue",
1366      "UserRequired"
1367    ]
1368  },
1369  {
1370    "name": "PrecompiledHeaderOutputFile",
1371    "switch": "Fp",
1372    "comment": "Precompiled Header Output File",
1373    "value": "",
1374    "flags": [
1375      "UserValue"
1376    ]
1377  },
1378  {
1379    "name": "AssemblerListingLocation",
1380    "switch": "Fa",
1381    "comment": "ASM List Location",
1382    "value": "",
1383    "flags": [
1384      "UserValue"
1385    ]
1386  },
1387  {
1388    "name": "ModuleOutputFile",
1389    "switch": "ifcOutput",
1390    "comment": "Module Output File Name",
1391    "value": "",
1392    "flags": [
1393      "UserValue"
1394    ]
1395  },
1396  {
1397    "name": "ModuleDependenciesFile",
1398    "switch": "sourceDependencies:directives",
1399    "comment": "Module Dependencies File Name",
1400    "value": "",
1401    "flags": [
1402      "UserFollowing"
1403    ]
1404  },
1405  {
1406    "name": "ObjectFileName",
1407    "switch": "Fo",
1408    "comment": "Object File Name",
1409    "value": "",
1410    "flags": [
1411      "UserValue"
1412    ]
1413  },
1414  {
1415    "name": "ProgramDataBaseFileName",
1416    "switch": "Fd",
1417    "comment": "Program Database File Name",
1418    "value": "",
1419    "flags": [
1420      "UserValue"
1421    ]
1422  },
1423  {
1424    "name": "XMLDocumentationFileName",
1425    "switch": "doc",
1426    "comment": "XML Documentation File Name",
1427    "value": "",
1428    "flags": [
1429      "UserValue",
1430      "UserRequired"
1431    ]
1432  },
1433  {
1434    "name": "SourceDependenciesFile",
1435    "switch": "sourceDependencies",
1436    "comment": "Source Dependencies File Name",
1437    "value": "",
1438    "flags": [
1439      "UserFollowing"
1440    ]
1441  },
1442  {
1443    "name": "BrowseInformationFile",
1444    "switch": "FR",
1445    "comment": "Browse Information File",
1446    "value": "",
1447    "flags": [
1448      "UserValue",
1449      "UserRequired"
1450    ]
1451  },
1452  {
1453    "name": "ProcessorNumber",
1454    "switch": "MP",
1455    "comment": "Number of processors",
1456    "value": "",
1457    "flags": [
1458      "UserValue",
1459      "UserRequired"
1460    ]
1461  }
1462]
1463