-#define LEXFACE(F) do { \
- lval.face = F; \
- LEXTOK(FACING, &lval.face); \
- } while (0);
+#define PUSHFACE(F) LEXTOK(FACING, face, F)
+#define PUSHREF(R) LEXTOK(REF, ref, R)
+#define PUSHLINK() LEXTOK(LINK, val, 0)
+#define PUSHNUM(N) LEXTOK(NUM, val, N)
+#define PUSHNAME(N) LEXTOK(NAME, str, N)
+#define PUSHOP(O) LEXTOK(O, val, 0)
+#define PUSHPATH(P) LEXTOK(PATH, str, P)