228 Commits

Author SHA1 Message Date
Ingvar Stepanyan
bc2e01aa03 Allow static as method name in class (fixes #192).
Add uncommitted tests for #191.
2015-01-09 15:31:01 +02:00
Ingvar Stepanyan
3d9048a692 Allow pattern in catch param (fixes #191). 2015-01-09 02:50:32 +02:00
Ingvar Stepanyan
85087f2a09 Disallow parentheses in lvalue except as in computed keys or default values. 2015-01-08 23:00:22 +02:00
Ingvar Stepanyan
4d4a76588c Parse assignment patterns in-place in certain contexts.
* Parsing assignables without extra transform step when possible (speed-up).
* Added support for shorthand defaults in such certain contexts (issue #181).
2015-01-08 20:19:48 +02:00
Marijn Haverbeke
0897901f1f Slight cleanup of '/' disambiguation
Issue #189
2015-01-06 11:03:50 +01:00
Marijn Haverbeke
b6b085ac8e Make tokenizer independent of parser (with regards to '/' disambiguation)
Issue #189
2015-01-06 10:58:52 +01:00
Marijn Haverbeke
7c6a8b7c76 Use parseExprSubscripts instead of parseExpression when parsing superclass
Issue #187
2015-01-04 22:30:50 +01:00
Marijn Haverbeke
045d8c02f5 Revert "Require superclass expressions to be lvals"
This reverts commit 0b59fc198baf2cd970091ee96fe5dd0f90034692.

Issue #187
2015-01-04 22:28:16 +01:00
Marijn Haverbeke
e271168cf6 Make onToken only fire for actual final tokens
Issue #189
2015-01-04 22:27:03 +01:00
Ingvar Stepanyan
431a44bc74 Add support for destructuring defaults (not for shorthand props yet).
Related to #181.
2015-01-04 12:15:24 +02:00
Marijn Haverbeke
0b59fc198b Require superclass expressions to be lvals
And remove a test that violates this.

Closes #185
2014-12-30 12:54:25 +01:00
Ingvar Stepanyan
0084ac14ae Fixed #186. 2014-12-30 13:42:37 +02:00
Ingvar Stepanyan
adec9f4b8e Provide better error on member expression in binding's left side. 2014-12-17 20:37:00 +02:00
Ingvar Stepanyan
e37c07248e Added optional support for hashbang directives.
Fixes #180.
2014-12-17 19:58:38 +02:00
Marijn Haverbeke
8e84aa02f4 Bump version number post-0.11 2014-12-17 11:54:40 +01:00
Marijn Haverbeke
78e1d7ada6 Mark version 0.11.0 2014-12-17 11:54:09 +01:00
Marijn Haverbeke
6915519498 Give TemplateElements a narrower range
Issue #169
2014-12-11 17:44:45 +01:00
Marijn Haverbeke
c671bcfaf7 Bump version number post-0.10 2014-12-11 14:52:32 +01:00
Marijn Haverbeke
0a812b6020 Mark release 0.10.0 2014-12-11 14:51:45 +01:00
Marijn Haverbeke
c989857aa5 Add allowImportExportEverywhere option
Closes #174
2014-12-11 14:48:03 +01:00
Marijn Haverbeke
2cb3dbcb41 Change token structure of template literals
Fix various template parsing issues, makes tokenizer useable from outside
the parser.

Closes #169
Closes #173
2014-12-11 14:20:01 +01:00
Sebastian McKenzie
53d98f1175 Make semicolon optional in do-while in >=ES6 2014-12-10 13:14:25 +01:00
Ingvar Stepanyan
96bc831306 Fix #173. 2014-12-07 19:55:31 +02:00
Ingvar Stepanyan
ba73b0e17e Disallow parenthesis in patterns
Fixes #155
2014-11-19 20:23:37 +01:00
Ingvar Stepanyan
4496ca411a Fixed import declaration for default+batch case.
Also removed deprecated `kind` property.
Fixes #161.
2014-11-19 14:05:34 +01:00
Rich Harris
f48a921e24 allow export { default } from "foo" 2014-11-12 17:42:55 +01:00
Marijn Haverbeke
98691e5b80 Properly initialize top node start position 2014-11-12 17:31:45 +01:00
Marijn Haverbeke
249e6961f8 Make tests pass for loose parser
Define Program node extent to be the whole program, make
both parser and the tests conform to this.

Fix a bunch of bugs in the loose parser's handling of corner
cases.

Issue #151
2014-11-12 17:05:19 +01:00
Ingvar Stepanyan
b46b53e149 Loose: implement object methods; expose processed options from acorn. 2014-11-12 16:19:15 +01:00
Ingvar Stepanyan
c5145cedb2 Fix no-options case for acorn. 2014-11-12 16:19:14 +01:00
Ingvar Stepanyan
b47696eecf Avoid UnaryExpression-specific properties in SpreadElement (just in case). 2014-11-12 16:19:14 +01:00
Ingvar Stepanyan
72df78cc88 Avoid separate handling of SpreadElement in favor of UnaryExpression parser. 2014-11-12 16:19:14 +01:00
Ingvar Stepanyan
b7367a2a8c Make setOptions non-destructive for original object. 2014-11-12 16:19:14 +01:00
Ingvar Stepanyan
11ecb20e9e Loose: ES6 function params support. 2014-11-12 16:19:14 +01:00
Sebastian McKenzie
a18f3d1003 Add support for computed static mutator class methods 2014-11-04 11:08:36 +01:00
Sebastian McKenzie
9d3580b23a make ImportDeclaration and ExportDeclaration semicolons more spec-compliant 2014-10-29 10:46:39 +01:00
Ingvar Stepanyan
f26b656ea5 Remove property name clash check in ES6 as per Draft Rev 26.
See https://github.com/rwaldron/tc39-notes/blob/master/es6/2014-06/jun-6.md#conclusionresolution-3 for details.

Conflicts:
	test/tests-harmony.js
2014-10-27 10:56:06 +01:00
Marijn Haverbeke
5d1db2e993 Only apply kludge from f48503cd31826f8cfb0f0e2b6964879dbe318385 when unicode regexps are not supported 2014-10-27 10:54:46 +01:00
Sebastian McKenzie
f48503cd31 add unicode flag support to regex 2014-10-27 10:51:23 +01:00
Ingvar Stepanyan
fd79ac5879 Move comprehension support under ecmaVersion: 7 as per spec. 2014-10-27 10:34:53 +01:00
Marijn Haverbeke
5ff7e59a0a Remove bogus support for \U escapes
Issue #147
2014-10-21 16:39:48 +02:00
Max Schaefer
d525c45644 Add option for representing parenthesized expressions in the AST. 2014-10-13 12:19:39 +02:00
Max Schaefer
e9c7209f8b Guard against missing elements in array patterns when checking function parameters. 2014-10-13 12:17:29 +02:00
Marijn Haverbeke
bdee9e8195 Make locations in loose parser consistent with those in regular parser
Issue #136
2014-10-08 12:35:57 +02:00
Marijn Haverbeke
3603f7d0b1 Adjust start positions of parenthesized expressions to not include parentheses
Issue #136
2014-10-08 11:52:49 +02:00
Marijn Haverbeke
1c9e0a9272 Bump version number post 0.9 2014-10-01 23:21:56 +02:00
Marijn Haverbeke
01a89cfec1 Mark release 0.9.0 2014-10-01 23:21:25 +02:00
r-e-d
f3e759cd03 Strict mode incorrectly reset after function 2014-09-30 11:45:20 +02:00
Max Schaefer
015a0e90bc Only accept for-of loops in ECMA6 mode. 2014-09-29 11:27:14 +02:00
Ingvar Stepanyan
daedc6fcb3 Fixes #129 and spaces in template quasi literals.
* Added hack to correctly handle skipped spaces after= template expressions.
* Added `null` default values for regular functions.
* Added regression tests for both.
2014-09-26 17:04:22 +02:00