diff --git a/js/rhino/org/mozilla/javascript/Parser.java b/js/rhino/org/mozilla/javascript/Parser.java index c9fa87cfb138..13ddf9d3e9eb 100644 --- a/js/rhino/org/mozilla/javascript/Parser.java +++ b/js/rhino/org/mozilla/javascript/Parser.java @@ -688,8 +688,9 @@ class Parser { tt = ts.peekTokenSameLine(); ts.flags &= ~ts.TSF_REGEXP; - if (tt != ts.EOF && tt != ts.EOL - && tt != ts.SEMI && tt != ts.RC) { + if (tt != ts.EOF && tt != ts.EOL && tt != ts.SEMI && + tt != ts.RC && !(tt == ts.PRIMARY && ts.getOp() == ts.THIS)) + { lineno = ts.getLineno(); retExpr = expr(ts, source, false); if (ts.getLineno() == lineno) diff --git a/js/rhino/org/mozilla/javascript/TokenStream.java b/js/rhino/org/mozilla/javascript/TokenStream.java index d4345ed1ad8d..11e274b5f6bb 100644 --- a/js/rhino/org/mozilla/javascript/TokenStream.java +++ b/js/rhino/org/mozilla/javascript/TokenStream.java @@ -195,7 +195,7 @@ public class TokenStream { INC = 105, // increment/decrement (++ --) DEC = 106, DOT = 107, // member operator (.) - PRIMARY = 108, // true, false, null, this, super + PRIMARY = 108, // true, false, null, this FUNCTION = 109, // function keyword EXPORT = 110, // export keyword IMPORT = 111, // import keyword diff --git a/js/rhino/src/org/mozilla/javascript/Parser.java b/js/rhino/src/org/mozilla/javascript/Parser.java index c9fa87cfb138..13ddf9d3e9eb 100644 --- a/js/rhino/src/org/mozilla/javascript/Parser.java +++ b/js/rhino/src/org/mozilla/javascript/Parser.java @@ -688,8 +688,9 @@ class Parser { tt = ts.peekTokenSameLine(); ts.flags &= ~ts.TSF_REGEXP; - if (tt != ts.EOF && tt != ts.EOL - && tt != ts.SEMI && tt != ts.RC) { + if (tt != ts.EOF && tt != ts.EOL && tt != ts.SEMI && + tt != ts.RC && !(tt == ts.PRIMARY && ts.getOp() == ts.THIS)) + { lineno = ts.getLineno(); retExpr = expr(ts, source, false); if (ts.getLineno() == lineno) diff --git a/js/rhino/src/org/mozilla/javascript/TokenStream.java b/js/rhino/src/org/mozilla/javascript/TokenStream.java index d4345ed1ad8d..11e274b5f6bb 100644 --- a/js/rhino/src/org/mozilla/javascript/TokenStream.java +++ b/js/rhino/src/org/mozilla/javascript/TokenStream.java @@ -195,7 +195,7 @@ public class TokenStream { INC = 105, // increment/decrement (++ --) DEC = 106, DOT = 107, // member operator (.) - PRIMARY = 108, // true, false, null, this, super + PRIMARY = 108, // true, false, null, this FUNCTION = 109, // function keyword EXPORT = 110, // export keyword IMPORT = 111, // import keyword