X-Git-Url: http://andersk.mit.edu/gitweb/splint.git/blobdiff_plain/abd7f89523564e5e238e5852585b98f72c3b48f4..69db2541c57e431cbd87bf1ae1eb25f34bc70743:/src/Headers/context.h diff --git a/src/Headers/context.h b/src/Headers/context.h index bf036a7..546ee56 100644 --- a/src/Headers/context.h +++ b/src/Headers/context.h @@ -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. ** */ @@ -58,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); @@ -104,7 +106,6 @@ extern /*@dependent@*/ /*@observer@*/ cstring context_tmpdir (void); extern void context_enterMTfile (void) /*@modifies internalState@*/ ; extern void context_exitMTfile (void) /*@modifies internalState@*/ ; -# ifndef NOLCL extern void context_enterLCLfile (void); extern void context_exitLCLfile (void); extern void context_enterImport (void) ; @@ -115,7 +116,6 @@ 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 (fileloc); @@ -156,6 +156,9 @@ extern int context_getLineLen (void) /*@*/ ; 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@*/ ; @@ -172,9 +175,6 @@ 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) /*@*/ ; @@ -242,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) /*@*/ ; @@ -295,6 +297,10 @@ extern clause context_nextBreakClause (void); extern bool context_anyErrors (void) /*@globals internalState@*/ ; extern void context_hasError (void) /*@modifies internalState@*/ ; extern int context_numErrors (void) /*@globals internalState@*/ ; + +extern void context_recordBug (void) /*@modifies internalState@*/ ; +extern int context_numBugs (void) /*@globals internalState@*/ ; + extern bool context_neednl (void); extern void context_setNeednl (void); @@ -303,7 +309,7 @@ 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@*/ ; @@ -331,39 +337,25 @@ extern void context_addAnnotation (/*@only@*/ annotationInfo) extern void context_addMetaState (/*@only@*/ cstring, /*@only@*/ metaStateInfo) /*@modifies internalState@*/ ; -extern valueTable context_createValueTable (sRef p_s, /*@only@*/ stateInfo p_sinfo) +extern valueTable context_createValueTable (sRef p_s, /*@only@*/ stateInfo p_info) /*@globals internalState@*/ ; -extern valueTable context_createGlobalMarkerValueTable (/*@only@*/ stateInfo p_sinfo) +extern valueTable context_createGlobalMarkerValueTable (/*@only@*/ stateInfo p_info) /*@globals internalState@*/ ; extern int context_getBugsLimit (void) /*@*/ ; # define context_getBugsLimit() ((int)context_getValue(FLG_BUGSLIMIT)) -/*drl 12/30/2001 these are some ugly functions that were added to facilitate struct annotations */ - - -extern bool hasInvariants (ctype p_ct); - -/*drl 1/6/2001: I didn't think these functions were solid enough to include in the - stable release of splint. I commented them out so that they won't break anything - but didn't delete them because they will be fixed and included later -*/ - -/*extern void setGlobalStructInfo(ctype p_ct, constraintList p_list); */ - -/*extern constraintList getInvariants (ctype p_ct); */ - -/* static int getSref (ctype ct, sRef s); */ +/*drl added 2/4/2002*/ -/* sRef fixSref (ctype p_ct, sRef p_base, sRef p_fix); */ +extern bool context_inOldStyleScope (void) /*@*/ ; -ctype context_setLastStruct (/*@returned@*/ ctype p_s) /*@modifies internalState@*/; -ctype context_getLastStruct (/*@returned@*/ /*ctype p_s*/) /*@modifies internalState@*/; +/*drl added 3/5/2003*/ -/*drl added 2/4/2002*/ +extern bool context_inSizeof (void); +extern void context_enterSizeof (void); +extern void context_leaveSizeof (void); - bool context_inOldSytleScope(void); # else # error "Multiple include" # endif