]> andersk Git - splint.git/blobdiff - src/Headers/mtContextNode.h
Fix tracker issue 1837229.
[splint.git] / src / Headers / mtContextNode.h
index b87e6d987915a8fd9018fcc718b7d59d411a95ec..20d9ac02785349184524cd17e1ec5305815fc4f3 100644 (file)
@@ -1,5 +1,5 @@
 /*
-** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2001.
+** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
 ** See ../LICENSE for license information.
 **
 */
 
 typedef enum
 {
-  MTC_ANY, MTC_PARAM, MTC_REFERENCE, MTC_CLAUSE
+  MTC_ANY = 0, MTC_PARAM, MTC_RESULT, MTC_REFERENCE, MTC_CLAUSE, MTC_LITERAL, MTC_NULL
 } mtContextKind ;
 
+/*@constant int MTC_NUMCONTEXTS@*/
+/*@+enumint@*/
+# define MTC_NUMCONTEXTS (MTC_NULL + 1)
+/*@=enumint@*/
+
 struct s_mtContextNode {
   mtContextKind context;
   ctype type; /* This state only applies to types matching. */
@@ -23,7 +28,7 @@ struct s_mtContextNode {
 /*@constant null mtContextNode mtContextNode_undefined@*/
 # define mtContextNode_undefined ((mtContextNode) 0)
 
-extern /*@falsenull@*/ bool mtContextNode_isDefined (mtContextNode p_s) /*@*/ ;
+extern /*@falsewhennull@*/ bool mtContextNode_isDefined (mtContextNode p_s) /*@*/ ;
 # define mtContextNode_isDefined(s) ((s) != mtContextNode_undefined)
 
 extern cstring mtContextNode_unparse (mtContextNode) /*@*/ ;
@@ -31,13 +36,19 @@ extern cstring mtContextNode_unparse (mtContextNode) /*@*/ ;
 extern mtContextNode mtContextNode_createAny (void) /*@*/ ;
 extern mtContextNode mtContextNode_createParameter (ctype) /*@*/ ;
 extern mtContextNode mtContextNode_createReference (ctype) /*@*/ ;
+extern mtContextNode mtContextNode_createResult (ctype) /*@*/ ;
 extern mtContextNode mtContextNode_createClause (ctype) /*@*/ ;
+extern mtContextNode mtContextNode_createNull (ctype) /*@*/ ;
+extern mtContextNode mtContextNode_createLiteral (ctype) /*@*/ ;
 
 extern void mtContextNode_free (/*@only@*/ mtContextNode) ;
 
-extern bool mtContextNode_isRef (mtContextNode) /*@*/;
+extern bool mtContextNode_isReference (mtContextNode) /*@*/;
+extern bool mtContextNode_isResult (mtContextNode) /*@*/;
 extern bool mtContextNode_isParameter (mtContextNode) /*@*/;
 extern bool mtContextNode_isClause (mtContextNode) /*@*/;
+extern bool mtContextNode_isLiteral (mtContextNode) /*@*/;
+extern bool mtContextNode_isNull (mtContextNode) /*@*/;
 
 extern bool mtContextNode_matchesEntry (mtContextNode, uentry) /*@*/ ;
 extern bool mtContextNode_matchesRef (mtContextNode, sRef) /*@*/ ;
@@ -45,6 +56,8 @@ extern bool mtContextNode_matchesRef (mtContextNode, sRef) /*@*/ ;
 extern bool mtContextNode_matchesRefStrict (mtContextNode, sRef) /*@*/ ;
    /* Doesn't allow matches with unknown type. */
 
+extern void mtContextNode_showRefError (mtContextNode, sRef) ;
+
 # else
 # error "Multiple include"
 # endif
This page took 0.033535 seconds and 4 git commands to generate.