# HG changeset patch # User lost # Date 1233379755 0 # Node ID 745721e13970dc059e34e7b40c1e0f6d011c6db6 # Parent d8d3cee39bc54838ba3d123ff023fb54a75e9477 allow : after symbol at line start diff -r d8d3cee39bc5 -r 745721e13970 lwasm/parse.c --- a/lwasm/parse.c Sat Jan 31 04:57:45 2009 +0000 +++ b/lwasm/parse.c Sat Jan 31 05:29:15 2009 +0000 @@ -68,7 +68,7 @@ { // we have a symbol specified here // parse it out and record it for later use - for (p2 = p; *p2 && !isspace(*p2); p2++) + for (p2 = p; *p2 && !isspace(*p2) && *p2 != ':'; p2++) /* do nothing */ ; sym = lwasm_alloc((p2 - p) + 1); @@ -76,6 +76,14 @@ memcpy(sym, p, p2 - p); p = p2; + if (!*sym) + { + register_error(as, l, 1, "Invalid symbol"); + lwasm_free(sym); + sym = NULL; + } + if (*p == ':') + p++; } l -> sym = sym;