diff options
author | Eugene Sandulenko | 2017-02-12 11:30:59 +0100 |
---|---|---|
committer | Eugene Sandulenko | 2017-02-12 11:32:05 +0100 |
commit | a243a479aef65fe184519803100477ac1f3626bf (patch) | |
tree | 37bdfeb2b4a62681ab3d43879361e2842a59d671 /engines/director/lingo/lingo-builtins.cpp | |
parent | e76fec67a13ccc433de6eb41e45649e68a2865cc (diff) | |
download | scummvm-rg350-a243a479aef65fe184519803100477ac1f3626bf.tar.gz scummvm-rg350-a243a479aef65fe184519803100477ac1f3626bf.tar.bz2 scummvm-rg350-a243a479aef65fe184519803100477ac1f3626bf.zip |
DIRECTOR: Lingo: Added grammar for assignment to references
Diffstat (limited to 'engines/director/lingo/lingo-builtins.cpp')
-rw-r--r-- | engines/director/lingo/lingo-builtins.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp index 98a4399e4e..ecf7fe22ad 100644 --- a/engines/director/lingo/lingo-builtins.cpp +++ b/engines/director/lingo/lingo-builtins.cpp @@ -296,6 +296,14 @@ static const char *builtinFunctions[] = { 0 }; +static const char *builtinReferences[] = { + "cast", + "field", + "script", + "window", + 0 +}; + static const char *predefinedMethods[] = { "mAtFrame", // D3 @@ -335,6 +343,13 @@ void Lingo::initBuiltIns() { _builtins[*b]->type = FBLTIN; } + for (const char **b = builtinReferences; *b; b++) { + if (!_builtins.contains(*b)) + error("Incorrectly setup builtinReferences[]: %s", *b); + + _builtins[*b]->type = RBLTIN; + } + for (const char **b = twoWordBuiltins; *b; b++) _twoWordBuiltins[*b] = true; |