]> andersk Git - splint.git/blobdiff - src/Headers/multiVal.h
Added va_copy to standard.h.
[splint.git] / src / Headers / multiVal.h
index 487f829d9ddf2b993f9837487d2f2132fc5a936e..71b88c2f43020f9151926311d3f5aeaefb9639c2 100644 (file)
@@ -7,22 +7,26 @@
 
 typedef enum { MVLONG, MVCHAR, MVDOUBLE, MVSTRING } mvkind;
 
-typedef /*@null@*/ struct _multiVal
+typedef /*@null@*/ struct
 {
   mvkind   kind;
-  union _mval
-    {
-      long int     ival;
-      char         cval;
-      double       fval;
-      /*@only@*/ cstring sval;
-    } value;
-
+  union
+  {
+    long int     ival;
+    char         cval;
+    double       fval;
+    /*@only@*/ cstring sval;
+  } value;
 } *multiVal;
 
-extern /*@falsenull@*/ bool multiVal_isDefined (multiVal p_m) /*@*/ ;
-extern /*@truenull@*/ bool multiVal_isUndefined (multiVal p_m) /*@*/ ;
-extern /*@truenull@*/ bool multiVal_isUnknown (multiVal p_m) /*@*/ ;
+extern /*@falsewhennull@*/ bool multiVal_isDefined (multiVal p_m) /*@*/ ;
+extern /*@nullwhentrue@*/ bool multiVal_isUndefined (multiVal p_m) /*@*/ ;
+extern /*@nullwhentrue@*/ bool multiVal_isUnknown (multiVal p_m) /*@*/ ;
+
+extern multiVal multiVal_add (multiVal p_m1, multiVal p_m2) /*@*/ ;
+extern multiVal multiVal_subtract (multiVal p_m1, multiVal p_m2) /*@*/ ;
+extern multiVal multiVal_multiply (multiVal p_m1, multiVal p_m2) /*@*/ ;
+extern multiVal multiVal_divide (multiVal p_m1, multiVal p_m2) /*@*/ ;
 
 /*@constant null multiVal multiVal_undefined; @*/
 # define multiVal_undefined      (multiVal)NULL
@@ -46,10 +50,10 @@ extern void multiVal_free (/*@only@*/ multiVal p_m);
 
 extern multiVal multiVal_invert (multiVal p_m) /*@*/ ;
 
-extern /*@falsenull@*/ bool multiVal_isInt (multiVal p_m) /*@*/ ;
-extern /*@falsenull@*/ bool multiVal_isChar (multiVal p_m) /*@*/ ;
-extern /*@falsenull@*/ bool multiVal_isDouble (multiVal p_m) /*@*/ ;
-extern /*@falsenull@*/ bool multiVal_isString (multiVal p_m) /*@*/ ;
+extern /*@falsewhennull@*/ bool multiVal_isInt (multiVal p_m) /*@*/ ;
+extern /*@falsewhennull@*/ bool multiVal_isChar (multiVal p_m) /*@*/ ;
+extern /*@falsewhennull@*/ bool multiVal_isDouble (multiVal p_m) /*@*/ ;
+extern /*@falsewhennull@*/ bool multiVal_isString (multiVal p_m) /*@*/ ;
 
 extern /*@only@*/ multiVal multiVal_undump (char **p_s) /*@modifies *p_s;@*/ ;
 extern /*@only@*/ cstring multiVal_dump (multiVal p_m) /*@*/ ;
This page took 0.049339 seconds and 4 git commands to generate.