chiark
/
gitweb
/
~mdw
/
mLib
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3b4e10a
)
Improve type safety for sym_iter objects.
author
mdw
<mdw>
Mon, 2 Aug 1999 16:53:48 +0000
(16:53 +0000)
committer
mdw
<mdw>
Mon, 2 Aug 1999 16:53:48 +0000
(16:53 +0000)
sym.h
patch
|
blob
|
blame
|
history
diff --git
a/sym.h
b/sym.h
index edd3284b174f2ffed15f022427a03eba11fad920..1de62f1c7700419338daa5a55be326ba59b28bc7 100644
(file)
--- a/
sym.h
+++ b/
sym.h
@@
-1,6
+1,6
@@
/* -*-c-*-
*
/* -*-c-*-
*
- * $Id: sym.h,v 1.
8 1999/08/02 14:45
:48 mdw Exp $
+ * $Id: sym.h,v 1.
9 1999/08/02 16:53
:48 mdw Exp $
*
* Symbol table management
*
*
* Symbol table management
*
@@
-30,6
+30,9
@@
/*----- Revision history --------------------------------------------------*
*
* $Log: sym.h,v $
/*----- Revision history --------------------------------------------------*
*
* $Log: sym.h,v $
+ * Revision 1.9 1999/08/02 16:53:48 mdw
+ * Improve type safety for sym_iter objects.
+ *
* Revision 1.8 1999/08/02 14:45:48 mdw
* Break low-level hashtable code out from sym.
*
* Revision 1.8 1999/08/02 14:45:48 mdw
* Break low-level hashtable code out from sym.
*
@@
-119,7
+122,7
@@
typedef struct sym_base {
/* --- An iterator block --- */
/* --- An iterator block --- */
-typedef
hash_iter
sym_iter;
+typedef
struct { hash_iter i; }
sym_iter;
/*----- External functions ------------------------------------------------*/
/*----- External functions ------------------------------------------------*/
@@
-206,7
+209,7
@@
extern void sym_remove(sym_table */*t*/, void */*b*/);
* iterate through a symbol table.
*/
* iterate through a symbol table.
*/
-#define SYM_MKITER(i
, t) HASH_MKITER((i), &(t
)->t)
+#define SYM_MKITER(i
_, t_) HASH_MKITER(&(i_)->i, &(t_
)->t)
extern void sym_mkiter(sym_iter */*i*/, sym_table */*t*/);
extern void sym_mkiter(sym_iter */*i*/, sym_table */*t*/);
@@
-220,9
+223,9
@@
extern void sym_mkiter(sym_iter */*i*/, sym_table */*t*/);
* returned in any particular order.
*/
* returned in any particular order.
*/
-#define SYM_NEXT(i
, p) do {
\
+#define SYM_NEXT(i
_, p) do {
\
hash_base *_q; \
hash_base *_q; \
- HASH_NEXT(
(i), _q);
\
+ HASH_NEXT(
&(i_)->i, _q);
\
(p) = (void *)_q; \
} while (0)
(p) = (void *)_q; \
} while (0)