Skip to content

Commit

Permalink
ensure createvar always gets a TokenIdentifier as name
Browse files Browse the repository at this point in the history
  • Loading branch information
NotFound committed Jun 10, 2012
1 parent f700547 commit 2352984
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 8 deletions.
10 changes: 5 additions & 5 deletions winxedst1.winxed
Expand Up @@ -2581,8 +2581,9 @@ class VarContainer
}
function createvar(var name, string type, int flags[optional])
{
__ASSERT__(name instanceof TokenIdentifier);
string sname = name.getidentifier();
var locals = self.locals;
string sname = name;
var exist = locals[sname];
if (exist != null)
Redeclared(name);
Expand Down Expand Up @@ -7292,10 +7293,9 @@ class ForeachStatement : LoopStatement, BlockStatement
function ForeachStatement(var start, var tk, var owner, var name, string type)
{
self.BlockStatement(start, owner);
string sname = name;
if (type != "") {
string deftype = typetoregcheck(type);
self.createvar(sname, deftype);
self.createvar(name, deftype);
self.deftype = deftype;
}
self.varname = name;
Expand Down Expand Up @@ -7428,9 +7428,9 @@ class TryStatement : BlockStatement
Expected("'(' after 'catch'", t);
t = tk.get();
if (! t.isop(")")) {
string exname = t.getidentifier();
RequireIdentifier(t);
self.exname = t;
self.createvar(exname, REGvar);
self.createvar(t, REGvar);
t = tk.get();
if (! t.isop(")"))
Expected("')' in 'catch'", t);
Expand Down
7 changes: 4 additions & 3 deletions winxedst2.winxed
Expand Up @@ -3141,8 +3141,9 @@ class VarContainer
}
function createvar(var name, string type, int flags[optional])
{
__ASSERT__(name instanceof TokenIdentifier);
string sname = name.getidentifier();
var locals = self.locals;
string sname = name;
var exist = locals[sname];
if (exist != null)
Redeclared(name);
Expand Down Expand Up @@ -9623,9 +9624,9 @@ class TryStatement : BlockStatement
Expected("'(' after 'catch'", t);
t = tk.get();
if (! t.isop(")")) {
string exname = t.getidentifier();
RequireIdentifier(t);
self.exname = t;
self.createvar(exname, REGvar);
self.createvar(t, REGvar);
t = tk.get();
if (! t.isop(")"))
Expected("')' in 'catch'", t);
Expand Down

0 comments on commit 2352984

Please sign in to comment.