diff options
-rw-r--r-- | lib/parse.js | 6 | ||||
-rw-r--r-- | test/compress/issue-1943.js | 31 |
2 files changed, 36 insertions, 1 deletions
diff --git a/lib/parse.js b/lib/parse.js index eab9b64d..97dd6d4b 100644 --- a/lib/parse.js +++ b/lib/parse.js @@ -285,7 +285,11 @@ function tokenizer($TEXT, filename, html5_comments, shebang) { S.regex_allowed = ((type == "operator" && !UNARY_POSTFIX(value)) || (type == "keyword" && KEYWORDS_BEFORE_EXPRESSION(value)) || (type == "punc" && PUNC_BEFORE_EXPRESSION(value))); - prev_was_dot = (type == "punc" && value == "."); + if (type == "punc" && value == ".") { + prev_was_dot = true; + } else if (!is_comment) { + prev_was_dot = false; + } var ret = { type : type, value : value, diff --git a/test/compress/issue-1943.js b/test/compress/issue-1943.js new file mode 100644 index 00000000..69bb9e64 --- /dev/null +++ b/test/compress/issue-1943.js @@ -0,0 +1,31 @@ +operator: { + input: { + a. //comment + typeof + } + expect_exact: "a.typeof;" +} + +name: { + input: { + a. //comment + b + } + expect_exact: "a.b;" +} + +keyword: { + input: { + a. //comment + default + } + expect_exact: "a.default;" +} + +atom: { + input: { + a. //comment + true + } + expect_exact: "a.true;" +} |