/*@modifies p_t@*/ ;
extern /*@exposed@*/ sRef sRef_makeAddress (/*@exposed@*/ sRef p_t);
-extern /*@notnull@*/ /*@dependent@*/ sRef sRef_makeUnconstrained (/*@exposed@*/ cstring) /*@*/ ;
+
+/* evans 2002-07-12: the parameter was exposed (but this led to invalid reads, reported by valgrind */
+extern /*@notnull@*/ /*@dependent@*/ sRef sRef_makeUnconstrained (/*@temp@*/ cstring) /*@*/ ;
extern /*@falsewhennull@*/ bool sRef_isUnconstrained (sRef p_s) /*@*/ ;
/*drl7x 11/28/00*/
-extern bool sRef_isFixedArray (sRef p_s) /*@*/;
-
-extern long int sRef_getArraySize (sRef p_s) /*@*/;
+extern bool sRef_isFixedArray (sRef p_s) /*@*/;
+extern size_t sRef_getArraySize (sRef p_s) /*@*/;
extern /*@observer@*/ cstring sRef_ntMessage (sRef p_s);
extern void sRef_resetLen (sRef p_s) /*@modifies p_s@*/ ;
/*@modifies p_s@*/ ;
# ifdef DEBUGSPLINT
-extern void sRef_checkCompletelyReasonable (sRef p_s) /*@*/ ;
+extern void sRef_checkCompletelyReasonable (sRef p_s) /*@modifies g_errorstream@*/ ;
# endif
# else