Use sv_t instead of raw char*
We're storing them as sv_t's anyway, we're fucked with regards to indirection. Thus, let's be nice to ourselves, and deal with the structures. We get the size of the structure for free anyway!
This commit is contained in:
6
tag.c
6
tag.c
@@ -22,7 +22,7 @@ lisp_t *tag_int(i64 i)
|
||||
return TAG((u64)i, INT);
|
||||
}
|
||||
|
||||
lisp_t *tag_sym(char *str)
|
||||
lisp_t *tag_sym(sv_t *str)
|
||||
{
|
||||
return TAG((u64)str, SYM);
|
||||
}
|
||||
@@ -57,10 +57,10 @@ i64 as_int(lisp_t *obj)
|
||||
;
|
||||
}
|
||||
|
||||
char *as_sym(lisp_t *obj)
|
||||
sv_t *as_sym(lisp_t *obj)
|
||||
{
|
||||
assert(IS_TAG(obj, SYM));
|
||||
return (char *)UNTAG(obj, SYM);
|
||||
return (sv_t *)UNTAG(obj, SYM);
|
||||
}
|
||||
|
||||
cons_t *as_cons(lisp_t *obj)
|
||||
|
||||
Reference in New Issue
Block a user