Handle undefined string identifiers. #54
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When parsing rules gyp does not complain about undefined string identifiers.
For example, it does not error when parsing this rule:
rule a { condition: $x }
With these changes it now walks the condition AST and makes sure all string
references are valid, including wildcard expansion.
While I'm here I uncovered a slight error with the Children() method on the Of
node, where it would always set the Strings to nil if there were none, which is
now fixed.
I also discovered some existing tests that were broken by this (they did not
have a $foo4 string defined) so I "fixed" those too.