summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/sys/include/np/lex.h3
-rw-r--r--src/sys/np/core/np_lex.c2
-rw-r--r--src/sys/np/core/np_parse.c3
3 files changed, 7 insertions, 1 deletions
diff --git a/src/sys/include/np/lex.h b/src/sys/include/np/lex.h
index 0edf262..ebd6f32 100644
--- a/src/sys/include/np/lex.h
+++ b/src/sys/include/np/lex.h
@@ -32,6 +32,9 @@
#include <sys/types.h>
+/* End-of-file */
+#define LEX_EOF (-2)
+
struct np_work;
/* Keywords */
diff --git a/src/sys/np/core/np_lex.c b/src/sys/np/core/np_lex.c
index b2fad3a..7d72db8 100644
--- a/src/sys/np/core/np_lex.c
+++ b/src/sys/np/core/np_lex.c
@@ -323,7 +323,7 @@ lex_nom(struct np_work *work, struct lex_token *res)
/* Match the token type */
switch (c) {
case '\0':
- return -2; /* EOF */
+ return LEX_EOF;
case '(':
res->token = TT_LPAREN;
break;
diff --git a/src/sys/np/core/np_parse.c b/src/sys/np/core/np_parse.c
index aba7198..4973ac0 100644
--- a/src/sys/np/core/np_parse.c
+++ b/src/sys/np/core/np_parse.c
@@ -272,6 +272,9 @@ parse_work(struct np_work *work)
while (error == 0) {
error = lex_nom(work, &tok);
+ if (error == LEX_EOF) {
+ break;
+ }
if (error < 0) {
return error;
}