aboutsummaryrefslogtreecommitdiff
path: root/shared/common/binport.c
diff options
context:
space:
mode:
Diffstat (limited to 'shared/common/binport.c')
-rw-r--r--shared/common/binport.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/shared/common/binport.c b/shared/common/binport.c
index 1df9571..90cf251 100644
--- a/shared/common/binport.c
+++ b/shared/common/binport.c
@@ -96,6 +96,7 @@ enum {
BINPORT_NULLTYPE,
BINPORT_INTTYPE = 1, BINPORT_FLOATTYPE, BINPORT_SYMTYPE,
BINPORT_DEFINTTYPE = 5, BINPORT_DEFFLOATTYPE, BINPORT_DEFSYMTYPE,
+ BINPORT_DEFDOLLSYMTYPE = 9,
BINPORT_SEMITYPE = 10, BINPORT_COMMATYPE,
BINPORT_DOLLARTYPE, BINPORT_DOLLSYMTYPE
};
@@ -535,6 +536,15 @@ static int binport_nextatom(t_binport *bp, t_atom *ap)
if (!binport_setbysymtable(bp, ap, opval))
goto badbin;
break;
+ case BINPORT_DEFDOLLSYMTYPE: /* half-byte #symbol id */
+ if (!binport_setbysymtable(bp, ap, opval))
+ goto badbin;
+ sprintf(buf, "#%s", ap->a_w.w_symbol->s_name);
+#ifdef BINPORT_DEBUG
+ binport_warning(buf);
+#endif
+ ap->a_w.w_symbol = gensym(buf);
+ break;
case BINPORT_SEMITYPE:
/* LATER warn about nonzero opval */
ap->a_type = A_SEMI;