]> andersk Git - splint.git/blobdiff - src/flags.def
Making fixes for Microsoft Visual C++ compiler.
[splint.git] / src / flags.def
index 588cfb10a268ffafc19da191e47a733661deb7b8..a41648d4b64209f61ad13f8a52cdd17adca65692 100644 (file)
@@ -54,7 +54,7 @@
 /*@notfunction@*/
 # define globalExtraArgFlag     FALSE, FALSE, TRUE,  FALSE, ARG_SPECIAL
 /*@notfunction@*/
-# define globalFileFlag         FALSE, FALSE, TRUE,  FALSE, ARG_FILE
+# define globalFileFlag         FALSE, TRUE,  TRUE,  FALSE, ARG_FILE
 /*@=namechecks@*/
 
 /*
@@ -131,6 +131,16 @@ static flaglist flags =
     "a possibly null pointer.",
     0, 0
   },
+  {
+    FK_NULL, FK_MEMORY, plainFlag,
+    "nullinit",
+    FLG_NULLINIT,
+    "inconsistent initialization involving null pointer",
+    "A reference with no null annotation is initialized "
+    "to NULL.  Use /*@null@*/ to declare the reference as "
+    "a possibly null pointer.",
+    0, 0
+  },
 
   /*
   ** Undefined Values (Section 3)
@@ -371,14 +381,14 @@ static flaglist flags =
     FK_BOOL, FK_NONE, regStringFlag, ARG_STRING,
     "boolfalse",
     FLG_BOOLFALSE,
-    "set name of boolean false (default FALSE)",
+    "set name of boolean false (default false)",
     NULL, 0, 0
   },
   {
     FK_BOOL, FK_NONE, regStringFlag, ARG_STRING,
     "booltrue",
     FLG_BOOLTRUE, 
-    "set name of boolean true (default TRUE)",
+    "set name of boolean true (default true)",
     NULL, 0, 0
   },
   {
@@ -396,10 +406,10 @@ static flaglist flags =
     FK_BOOL, FK_OPS, modeFlag,
     "boolcompare",
     FLG_BOOLCOMPARE,
-    "comparison between bools (dangerous because of multiple TRUE values)",
+    "comparison between bools (dangerous because of multiple true values)",
     "Two bool values are compared directly using a C primitive. This "
     "may produce unexpected results since all non-zero values are "
-    "considered TRUE, so different TRUE values may not be equal. "
+    "considered true, so different true values may not be equal. "
     "The file bool.h (included in splint/lib) provides bool_equal "
     "for safe bool comparisons.", 0, 0
   },
@@ -472,6 +482,55 @@ static flaglist flags =
     "An abstraction barrier is broken. If necessary, use /*@access <type>@*/ to allow access to an abstract type.",
     0, 0
   },
+  {
+    FK_ABSTRACT, FK_NONE, modeFlag,
+    "abstractcompare",
+    FLG_ABSTRACTCOMPARE,
+    "object equality comparison on abstract type operands",
+    "An object comparison (== or !=) is used on operands of abstract type.",
+    0, 0
+  },
+
+  {
+    FK_ABSTRACT, FK_NONE, plainFlag,
+    "numabstract",
+    FLG_NUMABSTRACT,
+    "data abstraction barriers",
+    "An abstraction barrier involving a numabstract type is broken. If necessary, use /*@access <type>@*/ to allow access to a numabstract type.",
+    0, 0
+  },
+  {
+    FK_ABSTRACT, FK_NONE, modeFlag,
+    "numabstractcast",
+    FLG_NUMABSTRACTCAST,
+    "numeric literal cast to numabstract type",
+    "A numeric literal is cast to a numabstract type.",
+    0, 0
+  },
+  {
+    FK_ABSTRACT, FK_NONE, modeFlag,
+    "numabstractlit",
+    FLG_NUMABSTRACTLIT,
+    "numeric literal can used as numabstract type",
+    "To allow a numeric literal to be used as a numabstract type, use +numabstractlit.",
+    0, 0
+  },
+  {
+    FK_ABSTRACT, FK_TYPEEQ, modeFlag,
+    "numabstractindex",
+    FLG_NUMABSTRACTINDEX,
+    "a numabstract type can be used to index an array",
+    "To allow numabstract types to index arrays, use +numabstractindex.",
+    0, 0
+  },
+  {
+    FK_ABSTRACT, FK_NONE, modeFlag,
+    "numabstractprint",
+    FLG_NUMABSTRACTPRINT,
+    "a numabstract value is printed using %d format code",
+    "A numabstract value is printed usind %d format code in a printf.",
+    0, 0
+  },
   {
     FK_ABSTRACT, FK_IMPLICIT, plainFlag,
     "impabstract",
@@ -1294,7 +1353,7 @@ static flaglist flags =
     "warnmissingglobs",
     FLG_WARNMISSINGGLOBALS,
     "global variable used in modifies clause is not listed in globals list",
-    "A global variable is used in the modifies clause, but it not listed in "
+    "A global variable is used in the modifies clause, but it is not listed in "
     "the globals list.  The variable will be added to the globals list.",
     0, 0
   },
@@ -1468,7 +1527,7 @@ static flaglist flags =
   },
   {
     FK_CONTROL, FK_NONE, plainFlag,
-    "emptyreturn", 
+    "emptyret", 
     FLG_EMPTYRETURN, 
     "empty return in function declared to return value",
     NULL,
@@ -1852,6 +1911,30 @@ static flaglist flags =
     "memory bounds checking (sets boundsread and boundswrite)",
     "Memory read or write may be out of bounds of allocated storage.", 0, 0
   },
+  {
+    FK_BOUNDS, FK_MEMORY, specialFlag,
+    "likelybounds",
+    FLG_LIKELYBOUNDS,
+    "memory bounds checking (sets likelyboundsread and likelyboundswrite)",
+    "Memory read or write may be out of bounds of allocated storage.", 0, 0
+  },
+  {
+    FK_BOUNDS, FK_MEMORY, plainFlag,
+    "likely-boundsread",
+    FLG_LIKELYBOUNDSREAD,
+    "likely out of bounds read",
+    "A memory read references memory beyond the allocated storage.",
+    0, 0
+  },
+  {
+    FK_BOUNDS, FK_MEMORY, plainFlag,
+    "likely-boundswrite",
+    FLG_LIKELYBOUNDSWRITE,
+    "likely buffer overflow from an out of bounds write",
+    "A memory write may write to an address beyond the allocated buffer.",
+    0, 0
+  },
+  
   {
     FK_BOUNDS, FK_MEMORY, plainFlag,
     "boundsread",
@@ -2935,6 +3018,13 @@ static flaglist flags =
     "Should use <stdarg.h> instead.",
     0, 0
   },
+  {
+    FK_HEADERS, FK_FILES, plainFlag,
+    "caseinsensitivefilenames",
+    FLG_CASEINSENSITIVEFILENAMES,
+    "file names are case insensitive (file.h and FILE.H are the same file)",
+    NULL, 0, 0
+  },
 
   /* 14.2 Generating Libraries */
 
@@ -3256,6 +3346,20 @@ static flaglist flags =
     "set number of spaces to indent sub-messages",
     NULL, 0, 0
   },
+  {
+    FK_FORMAT, FK_DISPLAY, valueFlag,
+    "locindentspaces",
+    FLG_LOCINDENTSPACES,
+    "set number of spaces to indent sub-messages that start with file locations",
+    NULL, 0, 0
+  },
+  {
+    FK_FORMAT, FK_DISPLAY, plainFlag,
+    "showdeephistory",
+    FLG_SHOWDEEPHISTORY,
+    "show all available information about storage mentioned in warnings",
+    NULL, 0, 0
+  },
   {
     FK_FORMAT, FK_DISPLAY, plainFlag,
     "showcolumn",
@@ -3263,6 +3367,27 @@ static flaglist flags =
     "show column number where error is found",
     NULL, 0, 0
   },
+  {
+    FK_FORMAT, FK_DISPLAY, plainFlag,
+    "showloadloc",
+    FLG_SHOWLOADLOC,
+    "show location information for load files",
+    NULL, 0, 0
+  },
+  {
+    FK_FORMAT, FK_DISPLAY, globalFileFlag,
+    "csv",
+    FLG_CSV,
+    "produce comma-separated values (CSV) warnings output file",
+    NULL, 0, 0
+  },
+  {
+    FK_FORMAT, FK_DISPLAY, plainFlag,
+    "csvoverwrite",
+    FLG_CSVOVERWRITE,
+    "overwrite exisiting CVS output file",
+    NULL, 0, 0
+  },
   {
     FK_FORMAT, FK_DISPLAY, plainFlag,
     "parenfileformat",
@@ -3678,6 +3803,22 @@ static flaglist flags =
     "To make enum and int types equivalent, use +enumint.",
     0, 0
   },
+  {
+    FK_TYPEEQ, FK_NONE, modeFlag,
+    "longint",
+    FLG_LONGINT,
+    "long int and int are equivalent",
+    "To make long int and int types equivalent, use +longint.",
+    0, 0
+  },
+  {
+    FK_TYPEEQ, FK_NONE, modeFlag,
+    "shortint",
+    FLG_SHORTINT,
+    "short int and int are equivalent",
+    "To make short int and int types equivalent, use +shortint.",
+    0, 0
+  },
   {
     FK_TYPEEQ, FK_NONE, modeFlag,
     "floatdouble",
@@ -3796,7 +3937,7 @@ static flaglist flags =
     FK_TYPEEQ, FK_POINTER, plainFlag,
     "zeroptr",
     FLG_ZEROPTR,
-    "tread 0 as a pointer",
+    "treat 0 as a pointer",
     NULL, 0, 0
   },
   {
This page took 0.071986 seconds and 4 git commands to generate.