/*
-** 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.
**
*/
SRT_LAST
} sortKind;
-typedef struct _smemberInfo {
+typedef struct s_smemberInfo {
lsymbol name;
sort sort;
/*@reldef@*/ lsymbol sortname; /* useful for sort_imports (yuk!) */
- /*@null@*/ /*@dependent@*/ struct _smemberInfo *next;
+ /*@null@*/ /*@dependent@*/ struct s_smemberInfo *next;
} smemberInfo;
/*@constant null smemberInfo *smemberInfo_undefined; @*/
# define smemberInfo_undefined ((smemberInfo *)NULL)
-typedef struct _sortNode
+typedef struct
{
sortKind kind;
bool mutable; /* TRUE if sort represents a mutable sort */
bool abstract; /* TRUE if sort represents an LCL abstract type */
bool imported; /* TRUE if sort was imported */
-} sortNode;
+} *sortNode;
extern cstring sort_unparse (sort p_s) /*@*/ ;
extern /*@exposed@*/ cstring sort_unparseName (sort p_s) /*@*/ ;
extern sort sort_makeFormal (sort p_insort) /*@*/ ;
extern sort sort_makeGlobal (sort p_insort) /*@*/ ;
extern sort sort_makePtr (ltoken p_t, sort p_baseSort) /*@*/ ;
-extern sort sort_makePtrN (sort p_s, int p_pointers) /*@*/ ;
+extern sort sort_makePtrN (sort p_s, pointers p_p) /*@*/ ;
extern sort sort_makeVal (sort p_sor) /*@*/ ;
extern sort sort_makeObj (sort p_sor) /*@*/ ;
# define sort_isNoSort(s) ((s) == 0)
/* assume NOSORTHANDLE is #define to 0 in sort.c */
-extern /*@unused@*/ void sort_printStats(void) /*@modifies g_msgstream@*/ ;
+extern /*@unused@*/ void sort_printStats(void) /*@modifies g_warningstream@*/ ;
-extern bool sort_equal (sort *p_s1, sort *p_s2) /*@*/ ;
+extern bool sort_equal (sort p_s1, sort p_s2) /*@*/ ;
extern sort sort_fromLsymbol (lsymbol p_sortid) /*@modifies internalState@*/ ;
-extern void sort_import(tsource *p_imported, ltoken p_tok, mapping *p_map)
- /*@modifies *p_imported, internalState@*/ ;
-
-/*@-namechecks@*/
-extern sort sort_bool;
-extern sort sort_capBool;
-extern sort sort_int;
-extern sort sort_char;
-extern sort sort_cstring;
-extern sort sort_float;
-extern sort sort_double;
-/*@=namechecks@*/
+extern void sort_import (inputStream p_imported, ltoken p_tok, mapping p_map)
+ /*@modifies p_imported, internalState@*/ ;
+
+extern sort g_sortBool;
+extern sort g_sortCapBool;
+extern sort g_sortInt;
+extern sort g_sortChar;
+extern sort g_sortCstring;
+extern sort g_sortFloat;
+extern sort g_sortDouble;
# else
# error "Multiple include"