# HG changeset patch # User Teemu Piippo # Date 1345861352 -10800 # Node ID 824ab7b28e3c61a98d5ece21af1260396f9ff746 # Parent 11451e7a2fe6d7ba17a06360fbc4cde38b86e737 renamed to undefined labels, not unmarked labels... diff -r 11451e7a2fe6 -r 824ab7b28e3c parser.cxx --- a/parser.cxx Sat Aug 25 05:20:16 2012 +0300 +++ b/parser.cxx Sat Aug 25 05:22:32 2012 +0300 @@ -68,7 +68,7 @@ unsigned int g_ScopeCursor = 0; DataBuffer* g_IfExpression = NULL; bool g_CanElse = false; -str* g_UnmarkedLabels[MAX_MARKS]; +str* g_UndefinedLabels[MAX_MARKS]; // ============================================================================ // Main parser code. Begins read of the script file, checks the syntax of it @@ -80,7 +80,7 @@ ZERO(scopestack[i]); for (int i = 0; i < MAX_MARKS; i++) - g_UnmarkedLabels[i] = NULL; + g_UndefinedLabels[i] = NULL; while (Next()) { // Check if else is potentically valid @@ -206,7 +206,7 @@ // If not set, define it if (m == MAX_MARKS) { m = w->AddMark (token); - g_UnmarkedLabels[m] = new str (token); + g_UndefinedLabels[m] = new str (token); } // Add a reference to the mark. @@ -515,16 +515,16 @@ if (FindGlobalVariable (token)) ParserError ("label name `%s` conflicts with variable\n", token.chars()); - // See if the label is already defined but unmarked + // See if a mark already exists for this label int mark = -1; for (int i = 0; i < MAX_MARKS; i++) { - if (g_UnmarkedLabels[i] && !g_UnmarkedLabels[i]->compare (token)) { + if (g_UndefinedLabels[i] && !g_UndefinedLabels[i]->compare (token)) { mark = i; w->MoveMark (i); - // No longer unmarked - delete g_UnmarkedLabels[i]; - g_UnmarkedLabels[i] = NULL; + // No longer undefinde + delete g_UndefinedLabels[i]; + g_UndefinedLabels[i] = NULL; } } @@ -655,8 +655,8 @@ ParserError ("script must have a state named `stateSpawn`!"); for (int i = 0; i < MAX_MARKS; i++) - if (g_UnmarkedLabels[i]) - ParserError ("label `%s` is referenced via `goto` but isn't defined\n", g_UnmarkedLabels[i]->chars()); + if (g_UndefinedLabels[i]) + ParserError ("label `%s` is referenced via `goto` but isn't defined\n", g_UndefinedLabels[i]->chars()); // Dump the last state's onenter and mainloop w->WriteBuffers ();