aboutsummaryrefslogtreecommitdiff
path: root/lib/parse.js
AgeCommit message (Expand)Author
2017-03-31sort options in alphabetical order (#1743)...They started off as functional groups I guess, but given the sheer number of options this is becoming too difficult to read.Alex Lam S.L
2017-03-24improve error marker placement (#1644)...For AST_UnaryPrefix, points to the operator rather than end of expression.Alex Lam S.L
2017-03-24fix regression: CLI options with hyphens like -b ascii-only (#1640)...fixes #1637kzc
2017-03-21throw parse error on invalid assignments (#1627)...fixes #1626Alex Lam S.L
2017-03-10fixup for #1585 (#1589)...As patched on `harmony`, `statement()` is the only user of `embed_tokens()` with a missing error branch. Updated test case and match up with `harmony` to facilitate future merging.Alex Lam S.L
2017-03-10Correctly raise a parse exception with a missing loop body (#1585)Michael Mior
2017-03-05fix handling of shebang and preamble (#1545)...fixes #1332Alex Lam S.L
2017-02-27improve error messages (#1506)...- better inheritance of `Error` sub-classes - mark parse error against source in CLI closes #235 closes #348 closes #524 closes #1356 closes #1405Alex Lam S.L
2017-02-21Fix: AST_Accessor missing start / end tokens...fixes #1492 closes #1493 Ondřej Španěl
2016-07-21Legacy octal integer strict mode fixesAnthony Van de Gejuchte
2016-07-15Fix error style for regex errorsAnthony Van de Gejuchte
2016-06-30Various LineTerminator changes...* Escaped newlines should also produce SyntaxError * Fix multiline comment parsing and add tests * Adapt makePredicate to handle \u2028 and \u2029 * Move up nlb check in regex so it's checked before any escape handling * Change error messages to conform ecma standard * Find_eol not recornizing \u2028 and \u2029 as line terminator * Remove \u180e as it is removed in unicode 6.3.0 from the category zs Anthony Van de Gejuchte
2016-06-30Move OctalEscapeSequence to read_escape_char...This should simplify and improve implementation, make it easier to implement template strings, and keep master a bit more in sync with harmony. Previous implementation wasn't broken, though the loop gave me the impression it could read infinite numbers and annoyed me a bit. It was also slightly unnecessary because the lookup involved only 3 characters. Anthony Van de Gejuchte
2016-06-19Normalize error messagesAnthony Van de Gejuchte
2016-06-19Don't mix strings with directives in output... * Don't interpret strings with escaped content as directive * Don't interpret strings after empty statement as directive * Adapt output to prevent strings being represent as directive * Introduce UGLIFY_DEBUG to allow internal testing like EXPECT_DIRECTIVE Anthony Van de Gejuchte
2016-06-12Don't allow with statements in strict modeAnthony Van de Gejuchte
2016-06-12Throw errors in strict mode for octal strings...Adds a directive tracker for the parser/tokenizer to allow parsing depending on directive context. Anthony Van de Gejuchte
2016-06-05Do not allow newlines in regexAnthony Van de Gejuchte
2016-05-04Handle CR line endings in comments....Fixes #1050 kzc
2016-04-16Parse comments without recursion to avoid RangeError....Fixes #993 kzc
2016-03-15Do not produce `let` as a variable name in mangle....Would previously occur in large generated functions with 21,000+ variables. Fixes #986. kzc
2016-01-19Allow operator names as getters/setters...Fixes #919 Fix provided by @kzc Anthony Van de Gejuchte
2015-12-27Fix ch that could contain other newline charactersAnthony Van de Gejuchte
2015-12-26Do not allow newlines in string literalsAnthony Van de Gejuchte
2015-12-17Semicolon after do...while statement is optionalAnthony Van de Gejuchte
2015-11-12Fix output for "use asm" code from SpiderMonkey AST...(will only work properly if the SM tree contains "raw" properties for Literal number nodes) Mihai Bazon
2015-11-11Rework has_directive...It's now available during tree walking, i.e. walker.has_directive("use asm"), rather than as part of the scope. It's thus no longer necessary to call `figure_out_scope` before codegen. Added special bits in the code generator to overcome the fact that it doesn't inherit from TreeWalker. Fix #861 Mihai Bazon
2015-11-09Fix parsing invalid input...i.e. `x = 1.xe` — because parseFloat("1.xe") returns 1, this parsed as `x = 1`. Ref #857 Mihai Bazon
2015-11-09Prevent ReDoS by not using a regexp to verify floating point numbers...`parseFloat` will return `NaN` for invalid numbers anyway, which is the check used to throw the parse error. Fixes #857 Richard van Velzen
2015-10-07Fix handling of "use asm" when no command line flags are passed to uglifyjs. ...kzc
2015-10-07Add proper support for "use asm"; blocks. Disable -c optimization within "use...kzc
2015-10-06Implement shebang supportAnthony Van de Gejuchte
2015-08-27Fix bad parsing of `new new x()()` constructs...Fixes #739 Richard van Velzen
2015-07-29Re-use the caught exception's error message in the parse error call.Chris Cowan
2015-07-29Give a good error message if an invalid regular expression is found.Chris Cowan
2015-05-20Treat \uFEFF as whitespace....Fix #714 Mihai Bazon
2015-05-05Only drop the BOM when it's the first character....Close #704 Mihai Bazon
2015-04-23Fix parsing strings with literal DOS newlines...(should not set newline_before) Fix #693 Mihai Bazon
2015-03-18Fix parsing for U+2028 / U+2029...(they should be treated as whitespace) Mihai Bazon
2015-02-11Add filename to the JS_Parse_Error exception....It would be nice to have access to the filename of the file that includes the code that causes a JavaScript error. This is especially handy if uglifying multiple files at once. Only a small change is needed for this to happen as it's already available in the function that throws the error.Edward Casbon
2015-01-27Add option to preserve/enforce string quote style...`-q 0` (default) use single or double quotes such as to minimize the number of bytes (prefers double quotes when both will do); this is the previous behavior. `-q 1` -- always use single quotes `-q 2` -- always use double quotes `-q 3` or just `-q` -- always use the original quotes. Related codegen option: `quote_style`. Close #495 Close #460 Some `yargs` guru please tell me why `uglifyjs --help` doesn't display the help string for `-q` / `--quotes`, and why it doesn't output the expected argument types anymore, like good old `optimist` did. Mihai Bazon
2015-01-20Add unicode digit parsing supportAnthony Van de Gejuchte
2015-01-20Update unicode letterAnthony Van de Gejuchte
2015-01-06Track ending lines/columns; fix end locations in Mozilla AST.Ingvar Stepanyan
2015-01-05Fix handling \r\n...Close #437 Mihai Bazon
2014-10-20Add option to allow return outside of functions....Close #288 Mihai Bazon
2014-04-18Always quote property names that contain non-ASCII characters....Fix #328 Mihai Bazon
2014-01-21Fix end token for conditionals. Close #404Mihai Bazon
2013-12-22Mark `yield` as reserved word. Close #375.Mihai Bazon
2013-10-30Fix parsing setters/getters (allow keywords for name)....The "key" property was always "set" or "get", which didn't make much sense. Now it'll be the actual name of the setter/getter (AST_Node), and the AST_Accessor object itself, which represents the function, won't store any name. Close #319 Mihai Bazon