The following warning names are currently recognized:
<descrip>
+ <tag><tt/const-comparison/</tag>
+ Warn if the result of a comparison is constant.
<tag><tt/error/</tag>
Treat all warnings as errors.
<tag><tt/no-effect/</tag>
Warn about statements that don't have an effect.
+ <tag><tt/struct-param/</tag>
+ Warn when passing structs by value.
<tag><tt/unknown-pragma/</tag>
Warn about known #pragmas.
<tag><tt/unused-label/</tag>
IntStack WarnEnable = INTSTACK(1); /* Enable warnings */
IntStack WarningsAreErrors = INTSTACK(0); /* Treat warnings as errors */
/* Warn about: */
-IntStack WarnNoEffect = INTSTACK(1); /* ... statements without an effect */
-IntStack WarnStructParam = INTSTACK(1); /* ... structs passed by val */
-IntStack WarnUnusedLabel = INTSTACK(1); /* ... unused labels */
-IntStack WarnUnusedParam = INTSTACK(1); /* ... unused parameters */
-IntStack WarnUnusedVar = INTSTACK(1); /* ... unused variables */
-IntStack WarnUnknownPragma = INTSTACK(1); /* ... unknown #pragmas */
+IntStack WarnConstComparison= INTSTACK(1); /* - constant comparison results */
+IntStack WarnNoEffect = INTSTACK(1); /* - statements without an effect */
+IntStack WarnStructParam = INTSTACK(1); /* - structs passed by val */
+IntStack WarnUnusedLabel = INTSTACK(1); /* - unused labels */
+IntStack WarnUnusedParam = INTSTACK(1); /* - unused parameters */
+IntStack WarnUnusedVar = INTSTACK(1); /* - unused variables */
+IntStack WarnUnknownPragma = INTSTACK(1); /* - unknown #pragmas */
/* Map the name of a warning to the intstack that holds its state */
typedef struct WarnMapEntry WarnMapEntry;
static WarnMapEntry WarnMap[] = {
/* Keep sorted, even if this isn't used for now */
{ &WarningsAreErrors, "error" },
+ { &WarnConstComparison, "const-comparison" },
{ &WarnNoEffect, "no-effect" },
{ &WarnStructParam, "struct-param" },
{ &WarnUnknownPragma, "unknown-pragma" },
extern IntStack WarnEnable; /* Enable warnings */
extern IntStack WarningsAreErrors; /* Treat warnings as errors */
/* Warn about: */
-extern IntStack WarnNoEffect; /* ... statements without an effect */
-extern IntStack WarnStructParam; /* ... structs passed by val */
-extern IntStack WarnUnusedLabel; /* ... unused labels */
-extern IntStack WarnUnusedParam; /* ... unused parameters */
-extern IntStack WarnUnusedVar; /* ... unused variables */
-extern IntStack WarnUnknownPragma; /* ... unknown #pragmas */
+extern IntStack WarnConstComparison; /* - constant comparison results */
+extern IntStack WarnNoEffect; /* - statements without an effect */
+extern IntStack WarnStructParam; /* - structs passed by val */
+extern IntStack WarnUnusedLabel; /* - unused labels */
+extern IntStack WarnUnusedParam; /* - unused parameters */
+extern IntStack WarnUnusedVar; /* - unused variables */
+extern IntStack WarnUnknownPragma; /* - unknown #pragmas */