]> andersk Git - splint.git/blobdiff - src/Headers/context.h
Made allocations involving sizeof work correctly (test/malloc.c).
[splint.git] / src / Headers / context.h
index 8cb3f593c730b423edf45ac7c7ebfca12c28dd69..c8ba6c3c66b679982ad7db2331363a6f3bad16f2 100644 (file)
@@ -1,5 +1,5 @@
 /*
-** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2000.
+** Copyright (C) University of Virginia, Massachusetts Institue of Technology 1994-2003.
 ** See ../LICENSE for license information.
 **
 */
@@ -26,7 +26,7 @@ extern bool context_hasMods (void);
 
 extern bool context_isSystemDir (cstring p_dir) /*@*/ ;
 
-extern /*@observer@*/ char *context_selectedLibrary (void) /*@*/ ;
+extern /*@observer@*/ cstring context_selectedLibrary (void) /*@*/ ;
 extern bool context_usingPosixLibrary (void) /*@*/ ;
 extern bool context_usingAnsiLibrary (void) /*@*/ ;
 extern flagcode context_getLibrary (void) /*@*/ ;
@@ -35,10 +35,15 @@ extern void context_setLibrary (flagcode) /*@modifies internalState@*/ ;
 extern void context_setPreprocessing (void) /*@modifies internalState@*/;
 extern void context_clearPreprocessing (void) /*@modifies internalState@*/;
 extern bool context_isPreprocessing (void) /*@*/;
+extern bool context_loadingLibrary (void) /*@*/ ;
 
 extern void context_setInCommandLine (void) /*@modifies internalState@*/ ;
 extern void context_clearInCommandLine (void) /*@modifies internalState@*/ ;
+
+extern void context_checkGlobalScope (void) /*@modifies internalState@*/ ;
+
 extern bool context_isInCommandLine (void) /*@*/ ;
+extern bool context_inXHFile (void) /*@*/ ;
 
 extern void context_resetErrors (void);
 
@@ -53,6 +58,8 @@ extern /*@observer@*/ cstring context_getTrueName (void) /*@*/ ;
 extern /*@observer@*/ cstring context_getLarchPath (void) /*@*/ ;
 extern /*@observer@*/ cstring context_getLCLImportDir (void) /*@*/ ;
 
+extern constraintList context_getImplicitFcnConstraints (uentry p_ue) /*@*/ ;
+
 extern bool context_checkExport (uentry p_e) /*@*/ ;
 extern bool context_checkGlobMod (sRef p_el) /*@*/ ;
 extern bool context_checkGlobUse (uentry p_glob);
@@ -86,7 +93,9 @@ extern void context_hideShowscan (void);
 extern void context_unhideShowscan (void);
 
 extern void context_setMode (cstring p_s);
+extern void context_setModeNoWarn (cstring p_s);
 extern void context_exitAllClauses (void);
+extern void context_exitAllClausesQuiet (void);
 extern bool context_inHeader (void);
 
 extern /*@dependent@*/ /*@exposed@*/ fileTable context_fileTable (void) /*@*/ ;
@@ -94,7 +103,9 @@ extern /*@dependent@*/ /*@exposed@*/ fileTable context_fileTable (void) /*@*/ ;
 extern /*@exposed@*/ messageLog context_messageLog (void);
 extern /*@dependent@*/ /*@observer@*/ cstring context_tmpdir (void);
 
-# ifndef NOLCL
+extern void context_enterMTfile (void) /*@modifies internalState@*/ ;
+extern void context_exitMTfile (void) /*@modifies internalState@*/ ;
+
 extern void context_enterLCLfile (void);
 extern void context_exitLCLfile (void);
 extern void context_enterImport (void) ;
@@ -105,11 +116,10 @@ extern bool context_msgLh (void) /*@*/ ;
 extern bool context_inLCLLib (void) /*@globals internalState@*/ ;
 extern bool context_inImport (void) /*@globals internalState@*/ ;
 extern void context_resetSpecLines (void) /*@modifies internalState@*/ ;
-# endif
 
 extern void context_exitMacroCache (void);
-extern void context_enterSuppressRegion (void);
-extern void context_exitSuppressRegion (void);
+extern void context_enterSuppressRegion (fileloc);
+extern void context_exitSuppressRegion (fileloc);
 extern void context_enterMacroFile (void);
 extern typeIdSet context_fileAccessTypes (void);
 extern void context_addFileAccessType (typeId p_t);
@@ -119,7 +129,7 @@ extern /*@observer@*/ uentryList context_getParams (void);
 extern bool context_isSpecialFile (cstring p_fname);
 extern /*@observer@*/ cstring context_inFunctionName (void) /*@*/ ;
 extern ctype context_currentFunctionType (void) /*@*/ ;
-extern void context_exitFile (void);
+extern void context_exitCFile (void);
 extern void context_enterConstantMacro (/*@dependent@*/ /*@exposed@*/ uentry p_e);
 extern void context_enterMacro (/*@observer@*/ uentry p_e);
 extern void context_enterFunction (/*@exposed@*/ uentry p_e);
@@ -131,14 +141,24 @@ extern bool context_globAccess (sRef p_s);
 extern /*@observer@*/ globSet context_getUsedGlobs (void);
 extern bool context_hasAccess (typeId p_t);
 extern bool context_couldHaveAccess (typeId p_t);
-extern /*@only@*/ cstring context_unparse (void);
+extern /*@only@*/ cstring context_unparse (void) /*@*/ ; 
 extern void context_setFunctionDefined (fileloc p_loc);
 extern void context_setFlagTemp (flagcode p_f, bool p_b);
 
+extern /*@unused@*/ void context_showFilelocStack (void) ;
+
 extern bool context_getFlag (flagcode p_d) /*@*/ ;
+extern bool context_flagOn (flagcode p_f, fileloc p_loc) /*@*/ ;
+
 extern int context_getLineLen (void) /*@*/ ;
 # define context_getLineLen()  ((int)context_getValue(FLG_LINELEN))
 
+extern int context_getIndentSpaces (void) /*@*/ ;
+# define context_getIndentSpaces() ((int)context_getValue(FLG_INDENTSPACES))
+
+extern int context_getLocIndentSpaces (void) /*@*/ ;
+# define context_getLocIndentSpaces() ((int)context_getValue(FLG_LOCINDENTSPACES))
+
 extern int context_getValue (flagcode p_flag) /*@*/ ;
 extern void context_setValueAndFlag (flagcode p_flag, int p_val) 
    /*@modifies internalState@*/ ;
@@ -155,16 +175,13 @@ extern /*@observer@*/ cstring context_getString (flagcode p_flag) /*@*/ ;
 extern void context_setString (flagcode p_flag, /*@only@*/ cstring p_val)
    /*@modifies internalState@*/ ;
 
-extern bool context_getDebug (flagcode p_d);
-# define context_getDebug(p_d) context_getFlag(p_d)
-
 extern void context_userSetFlag (flagcode p_f, bool p_b);
 
 extern int context_getExpect (void) /*@*/ ;
 
 extern /*@observer@*/ sRefSet context_modList(void);
 extern /*@exposed@*/ uentry context_getHeader(void) /*@*/;
-extern void context_usedGlobal (sRef p_el);
+extern void context_usedGlobal (/*@exposed@*/ sRef p_el);
 extern void context_resetModeFlags (void);
 extern ctype context_typeofZero (void);
 extern ctype context_typeofOne (void);
@@ -184,7 +201,7 @@ extern void context_setFilename(fileId p_fid, int p_lineno)
    /*@globals fileloc g_currentloc; @*/  
    /*@modifies g_currentloc@*/ ;
 
-extern void context_fileSetFlag (flagcode p_f, ynm p_set);
+extern void context_fileSetFlag (flagcode p_f, ynm p_set, fileloc p_loc);
 
 extern /*@unused@*/ /*@only@*/ cstring context_unparseAccess (void) /*@*/ ;
 extern bool context_inFunction(void) /*@*/ ;
@@ -193,7 +210,7 @@ extern bool context_inFunctionLike (void) /*@*/ ;
 extern void context_setMacroMissingParams (void);
 extern void context_resetMacroMissingParams (void);
 extern bool context_isMacroMissingParams (void) /*@*/ ;
-extern bool context_inMacroUnknown (void) /*@*/ ;
+extern bool context_inUnknownMacro (void) /*@*/ ;
 
 /*@observer@*/ cstring context_getDump (void) /*@*/ ;
 /*@observer@*/ cstring context_getMerge (void) /*@*/ ;
@@ -204,8 +221,8 @@ extern void context_exitTrueClause (exprNode p_pred, exprNode p_tbranch);
 extern void context_destroyMod (void) /*@modifies internalState@*/ ;
 extern void context_addMacroCache (/*@only@*/ cstring p_def);
 extern void context_processAllMacros (void);
-extern void context_addComment (/*@only@*/ cstring p_def);
-extern void context_enterSuppressLine (int p_count);
+extern void context_addComment (/*@only@*/ cstring p_def, fileloc p_loc);
+extern void context_enterSuppressLine (int p_count, fileloc p_loc);
 extern bool context_inSuppressZone (fileloc p_fl) /*@*/ ;
 extern void context_dumpModuleAccess (FILE *p_fout);
 extern void context_loadModuleAccess (FILE *p_in);
@@ -225,6 +242,8 @@ extern void context_quietExitFunction (void);
 extern bool context_msgBoolInt (void) /*@*/ ;
 extern bool context_msgCharInt (void) /*@*/ ;
 extern bool context_msgEnumInt (void) /*@*/ ;
+extern bool context_msgLongInt (void) /*@*/ ;
+extern bool context_msgShortInt (void) /*@*/ ;
 extern bool context_msgPointerArith (void) /*@*/ ;
 extern bool context_msgStrictOps (void) /*@*/ ;
 
@@ -286,11 +305,52 @@ extern bool context_inMacroFunction (void) /*@globals internalState@*/ ;
 
 extern /*@observer@*/ cstring context_moduleName (void) /*@*/ ;
 extern void context_recordFileGlobals (/*@dependent@*/ globSet p_mods);
-extern void context_checkSuppressCounts (void) /*@modifies g_msgstream@*/ ;
+extern void context_checkSuppressCounts (void) /*@modifies g_warningstream@*/ ;
+
+extern bool context_inFunctionHeader (void) /*@globals internalState@*/ ;
+extern void context_enterFunctionHeader (void) /*@modifies internalState@*/ ;
+extern void context_exitFunctionHeader (void) /*@modifies internalState@*/ ;
+
+extern bool context_inFunctionDeclaration (void) /*@globals internalState@*/ ;
+extern void context_enterFunctionDeclaration (/*@exposed@*/ uentry) /*@modifies internalState@*/ ;
+extern void context_exitFunctionDeclaration (void) /*@modifies internalState@*/ ;
+extern void context_enterOldStyleScope (void) /*@modifies internalState@*/ ;
+extern void context_completeOldStyleFunction (/*@exposed@*/ uentry p_e) /*@modifies internalState@*/ ;
+
+extern ctype context_boolImplementationType (void) /*@*/ ;
+extern /*@observer@*/ /*@null@*/ annotationInfo 
+   context_lookupAnnotation (cstring p_annot) /*@*/ ;
+
+extern /*@observer@*/ metaStateTable context_getMetaStateTable (void) 
+     /*@globals internalState@*/ ;
+
+extern /*@observer@*/ metaStateInfo context_lookupMetaStateInfo (cstring p_key) 
+     /*@globals internalState@*/ ;
+
+extern void context_addAnnotation (/*@only@*/ annotationInfo)
+     /*@modifies internalState@*/ ;
+
+extern void context_addMetaState (/*@only@*/ cstring, /*@only@*/ metaStateInfo)
+     /*@modifies internalState@*/ ;
+
+extern valueTable context_createValueTable (sRef p_s, /*@only@*/ stateInfo p_info)
+     /*@globals internalState@*/ ;
+
+extern valueTable context_createGlobalMarkerValueTable (/*@only@*/ stateInfo p_info)
+     /*@globals internalState@*/ ;
+
+extern int context_getBugsLimit (void) /*@*/ ;
+# define context_getBugsLimit()  ((int)context_getValue(FLG_BUGSLIMIT))
+
+/*drl added 2/4/2002*/
+
+extern bool context_inOldStyleScope (void) /*@*/ ;
+
+/*drl added 3/5/2003*/
 
-extern bool context_inFunctionDecl (void) /*@globals internalState@*/ ;
-extern void context_enterFunctionDecl (void) /*@modifies internalState@*/ ;
-extern void context_exitFunctionDecl (void) /*@modifies internalState@*/ ;
+extern bool context_inSizeof (void);
+extern void context_enterSizeof (void);
+extern void context_leaveSizeof (void);
 
 # else
 # error "Multiple include"
This page took 0.518359 seconds and 4 git commands to generate.