Commit Graph

153 Commits

Author SHA1 Message Date
Fábio Santos
a92a14d171 Remove unused state variable in_parameters, and also remove unreachable code (try_an_object always returned an object!) 2016-03-22 11:41:00 +02:00
Fábio Santos
2a24fa8d2b prefixed template strings, like "String.rawfoo\nbar". 2016-03-22 11:41:00 +02:00
Fábio Santos
e0b78bfa5f Parse and output ES6 template strings. Yikes! 2016-03-22 11:41:00 +02:00
Fábio Santos
a54b64d660 What about --mangle-props being on and --mangle being off? 2016-03-22 11:41:00 +02:00
Fábio Santos
cfb1b5d848 Starting destructuring expressions 2016-03-22 11:41:00 +02:00
Fábio Santos
048eac6b29 Tolerate expansions in vardefs, too! 2016-03-22 11:41:00 +02:00
Fábio Santos
a170ad9d0d Destructuring vardef in for..of and for..in 2016-03-22 11:41:00 +02:00
Fábio Santos
a3a4ae5ef8 Add holes in destructuring defs, also make them nestable 2016-03-22 11:40:44 +02:00
Fábio Santos
3b189f86ff Parse and compress destructuring VarDefs 2016-03-22 11:40:44 +02:00
Fábio Santos
046e303669 s/binary/number/g 2016-03-22 11:40:44 +02:00
Fábio Santos
ebd0682376 Add new-style octal literals and make the B and the O case insensitive. 2016-03-22 11:40:44 +02:00
Fábio Santos
6f93a8d4a1 Fix evaluating the typeof an arrow function. Using evaluate on used to cause a crash. 2016-03-22 11:40:44 +02:00
Fábio Santos
7f825c8244 expand parameters
Conflicts:
	test/compress/harmony.js
2016-03-22 11:40:26 +02:00
Fábio Santos
7112c49c92 Uglifyjs already supports super as an implicit global! Just adding a test to indicate that. 2016-03-22 11:40:26 +02:00
Fábio Santos
df95318e8b => with destructuring arguments. Requires a lot of parser changes 2016-03-22 11:40:26 +02:00
Fábio Santos
aa127457d5 Adding arrow functions 2016-03-22 11:40:26 +02:00
Fábio Santos
8ca033e7f2 Add a test to verify that destructuring arguments work with #203 code 2016-03-22 11:39:49 +02:00
Fábio Santos
3f87afdb2c test that names used in destructurings don't get hoisted 2016-03-22 11:39:49 +02:00
Fábio Santos
aaa8f25bf0 Starting destructuring. 2016-03-22 11:39:49 +02:00
philippsimon
ee6c9fabb7 Fix: Uglified Number.prototype functions on big numbers 2016-03-14 12:41:06 +01:00
kzc
11b0efdf84 boolean_expression ? true : false --> boolean_expression 2016-02-22 17:59:36 +01:00
kzc
5486b68850 Take operator || precendence into account for AST_If optimization.
Fixes #979.
2016-02-21 12:05:02 -05:00
alexlamsl
6547437725 preserve ThisBinding for side_effects 2016-02-17 19:34:01 +01:00
Richard van Velzen
9662228f6a Don't compress (0, eval)() to eval() 2016-02-16 19:00:48 +01:00
alexlamsl
31a9b05c96 Preserve ThisBinding in conditionals & collapse_vars
Fixes #973
2016-02-16 18:47:49 +01:00
kzc
929de2b0de collapse_vars: fix if/else and ternary operator side effects 2016-01-28 12:17:06 -05:00
kzc
af2472d85e collapse_vars: fix bug in repeated var defs of same name 2016-01-28 16:48:50 +01:00
kzc
0a38a688f9 fix bug in collapse_vars for right side of "||" and "&&" 2016-01-27 14:18:46 -05:00
kzc
f4c2ea37bf Collapse single use var definitions
Fix #721
2016-01-27 11:48:15 +02:00
Richard van Velzen
b5a7197ae5 Merge pull request #928 from STRML/constPragma
Mark vars with /** @const */ pragma as consts so they can be eliminated.
2016-01-20 19:04:36 +01:00
Samuel Reed
1b703349cf
Tighten up @const regex. 2016-01-20 11:35:45 -06:00
Samuel Reed
f97da4294a
Use TreeWalker for more accurate @const results and update tests 2016-01-20 10:54:00 -06:00
Samuel Reed
8b71c6559b
Mark vars with /** @const */ pragma as consts so they can be eliminated.
Fixes older browser support for consts and allows more flexibility
in dead code removal.
2016-01-19 13:23:02 -06:00
Anthony Van de Gejuchte
26641f3fb2 Allow operator names as getters/setters
Fixes #919

Fix provided by @kzc
2016-01-19 19:28:51 +01:00
Anthony Van de Gejuchte
70e5b6f15b Add some tests for comment-filters through api
Also never bother comment options to filter comment5/shebang comments
as they have their custom filter.
2016-01-19 19:14:19 +01:00
Anthony Van de Gejuchte
8439c8ba98 Make arguments test slightly more strict 2016-01-15 00:04:05 +01:00
Anthony Van de Gejuchte
5c4e470d43 Add scope test for arguments 2016-01-14 22:32:46 +01:00
Anthony Van de Gejuchte
6605d15783 Never mangle arguments and keep them in their scope
Fixes #892

Helped-by: kzc
2016-01-14 19:45:52 +01:00
Richard van Velzen
ac8db977b9 Merge pull request #905 from avdg/unit-tests
Add unit tests
2016-01-14 08:54:40 +01:00
Anthony Van de Gejuchte
88b77ddaa9 Add test case for line continuation 2016-01-13 00:34:56 +01:00
Mihai Bazon
fe4e9f9d97 Fix hoisting the var in ForIn
Close #913
2016-01-05 13:56:52 +02:00
Anthony Van de Gejuchte
8c6af09ae0 Add mocha tests 2015-12-27 22:38:20 +01:00
Richard van Velzen
60c4030a4d Merge pull request #874 from kzc/fix-conditionals
#873 Fix `conditionals` optimizations with default compress options
2015-12-26 14:28:33 +01:00
Anthony Van de Gejuchte
0cabedc526 Disable loop optimization for parse-only tests 2015-12-18 19:20:56 +01:00
Anthony Van de Gejuchte
5cd26c005b Add tests 2015-12-18 14:39:48 +01:00
kzc
774bda13cd #873 Fix conditionals optimizations with default compress options 2015-11-24 13:27:50 -05:00
Mihai Bazon
619adb0308 Replace util.error with console.log 2015-11-12 11:47:37 +02:00
kzc
bd0ae6569f return undefined optimization no longer uses return_void_0 option 2015-10-29 08:19:12 +01:00
kzc
841a661071 more tests for return undefined optimization 2015-10-29 08:19:12 +01:00
kzc
7491d07666 optimize return undefined and return void 0 2015-10-29 08:19:12 +01:00