7470 Commits

Author SHA1 Message Date
Nathan Shively-Sanders
609cd0016b Merge branch 'object-spread' into object-rest 2016-11-07 11:10:29 -08:00
Nathan Shively-Sanders
f03fecbd31 Merge branch 'master' into object-spread 2016-11-07 11:02:49 -08:00
Nathan Shively-Sanders
83e95d43f8 Revert unneeded change and comments per PR 2016-11-07 11:00:24 -08:00
Nathan Shively-Sanders
7b9a42f995 Add --target esnext
Currently, this disables the rest and spread transforms. This will
change as proposals enter and leave stage 3.
2016-11-07 09:54:48 -08:00
Nathan Shively-Sanders
6a82ae4cbb Add SpreadAssignment to visitors
1. visitNode
2. reduceNode
3. emit

This fixes an emit bug for setters.
2016-11-07 09:04:00 -08:00
Nathan Shively-Sanders
a84c7aeea4 Rename SpreadElementExpression -> SpreadAssignment
and SpreadExpression (formerly SpreadElementExpression) -> SpreadElement
2016-11-07 08:36:03 -08:00
Vladimir Matveev
ed4fead087 add missing bind calls to properly set parent on token nodes (#12057) 2016-11-04 21:54:22 -07:00
Nathan Shively-Sanders
a55ed26d2b Spread any types to any 2016-11-04 16:06:33 -07:00
Nathan Shively-Sanders
4c365bd76a Move transformFunctionBody to factory
It is shared by es2015 and esNext transformers.

This commit just adds a convertObjectRest flag to be passed on to
flattenDestructuring functions, as well as adding necessary parameters
to use the code outside a transformer.
2016-11-04 13:56:28 -07:00
Nathan Shively-Sanders
cc342d12e7 Move convertForOf to factory for esnext and es2015
Saves a lot of duplicated code
2016-11-04 11:06:56 -07:00
Sheetal Nandi
4a906143c6 Merge pull request #11998 from Microsoft/unusedProperty
Mark property referenced in the destructuring as referenced
2016-11-04 10:42:05 -07:00
Nathan Shively-Sanders
71f3157a35 Address PR comments
1. Remove extra line in __rest shim.
2. Improve __rest vs __assign check for destructuring assignment.
2016-11-04 09:03:03 -07:00
Ron Buckton
defc0537ae Merge pull request #12039 from Microsoft/fix12010
Ensure transformFlags are correct before visiting a node.
2016-11-03 23:38:52 -07:00
Zhengbo Li
1c004bf317 Port #12027, #11980 and #11932 to master (#12037)
* add test for the fix for overwrite emitting error

* cr feedback
2016-11-03 21:13:41 -07:00
Ron Buckton
cbec19afd7 Ensure transformFlags are correct before visiting a node. 2016-11-03 17:21:36 -07:00
Nathan Shively-Sanders
c9c5f49a24 Improve readability of ES next destructuring emit 2016-11-03 13:36:35 -07:00
Anders Hejlsberg
6a5de5d00e Fix linting errors 2016-11-03 10:55:58 -07:00
Nathan Shively-Sanders
7ff8876096 Merge branch 'object-spread' into object-rest-syntax 2016-11-03 10:12:45 -07:00
Anders Hejlsberg
83abd048b5 Correct assignability for keyof types and type parameters 2016-11-03 10:01:27 -07:00
Nathan Shively-Sanders
7a2c7ad374 Spread handles index signatures from singleton spreads
I broke it when simplifying the logic earlier.
2016-11-03 09:41:31 -07:00
Nathan Shively-Sanders
a6320203be Fix lint 2016-11-02 16:31:04 -07:00
Nathan Shively-Sanders
334820c357 Remove spread types, leaving spread syntax/emit
Spreads are still typed, but cannot be created from a non-object type.
Tests still need to be updated.
2016-11-02 16:26:34 -07:00
Nathan Shively-Sanders
e3a08ed663 Downlevel emit of rest elements 2016-11-02 14:56:01 -07:00
Nathan Shively-Sanders
a7c18367ca Parse, bind and check rest elements 2016-11-02 14:55:24 -07:00
Vladimir Matveev
ab75ea75d3 module resolution: prefer locally defined ambient modules, reuse resolutions to ambient modules from the old program (#11999)
module resolution: prefer locally defined ambient modules, reuse resolutions to ambient modules from the old program
2016-11-02 14:41:26 -07:00
Nathan Shively-Sanders
f2d739ffcf Spread types handle nested index [access] types
Nested index [access] types are treated as assignable to themselves only,
just like type parameters.
2016-11-02 11:36:25 -07:00
Sheetal Nandi
13e8f7fada Mark property referenced in the destructuring as referenced
Fixes #11324
2016-11-02 11:08:34 -07:00
Nathan Shively-Sanders
2ae6ecc1a5 Merge branch 'master' into object-spread 2016-11-02 10:57:20 -07:00
Anders Hejlsberg
7b34b612be Merge pull request #11929 from Microsoft/keyoftypes
Static types for dynamically named properties
2016-11-02 09:36:54 -07:00
Anders Hejlsberg
70fc25a45a Minor fixes 2016-11-02 09:02:05 -07:00
Mohamed Hegazy
6b94bae437 Fix #11396: Make error message referene Promise explicitly (#11982)
* Simplify the checking for async function return type

* Fix https://github.com/Microsoft/TypeScript/issues/11396: Make error message referene `Promise` explicitly
2016-11-01 17:03:56 -07:00
Anders Hejlsberg
663985eed0 Fix 'keyof any' to produce 'string | number' 2016-11-01 16:59:53 -07:00
Anders Hejlsberg
41c20545e1 Improve unification by moving more logic to getIndexedAccessType 2016-11-01 10:17:08 -07:00
Anders Hejlsberg
6b28d21a82 Merge branch 'master' into keyoftypes
# Conflicts:
#	src/compiler/diagnosticMessages.json
2016-10-31 16:04:40 -07:00
Anders Hejlsberg
f9e208533a Unify checking of indexed access expressions and indexed access types 2016-10-31 15:28:28 -07:00
Ron Buckton
4371889854 Merge pull request #11430 from Microsoft/fixAsyncReturnTypeCheck
Fix async return type check
2016-10-31 15:18:11 -07:00
Ron Buckton
884e9f47db Merge branch 'master' into fixAsyncReturnTypeCheck 2016-10-31 15:17:26 -07:00
Andy
ecb7b00e1c Forbid augmentation of untyped module (#11962)
* Forbid augmentation of untyped module

* Just use `undefined` for untyped modules
2016-10-31 15:04:22 -07:00
Andy
e6f6a5e6f6 Merge pull request #11495 from Microsoft/includes_glob
Implicitly consider an extensionless file in "includes" to be a recursive directory glob
2016-10-31 13:56:10 -07:00
Anders Hejlsberg
2f34f7c569 Improve more error messages 2016-10-30 19:01:07 -07:00
Anders Hejlsberg
6c205330a1 Improved error messages for invalid assignments to properties 2016-10-30 18:08:43 -07:00
Anders Hejlsberg
5515dcea34 Improved error messages for invalid assignments to identifiers 2016-10-30 16:01:15 -07:00
Vladimir Matveev
44ce59d1d8 cache type for empty type literal (#11934)
cache type for empty type literal
2016-10-29 15:57:51 -07:00
jramsay
980f9fd2a9 Merge pull request #11848 from Microsoft/AddJavaScriptSemanticErrorsToSyntacticErrors
Fix for #11719 - TSServer: JS files should display syntactic errors for TS syntax
2016-10-28 16:49:53 -07:00
Vladimir Matveev
fcdeecfa4a Merge pull request #11925 from Microsoft/vladima/11880
update CFG to properly handle do statements
2016-10-28 16:12:53 -07:00
Vladimir Matveev
9bb7ba5862 Merge pull request #11928 from Microsoft/vladima/11738
do not inline async IIFEs in control flow graph
2016-10-28 16:12:31 -07:00
Anders Hejlsberg
8d87971fee Minor fixes 2016-10-28 15:35:15 -07:00
Vladimir Matveev
73c59bbf85 do not inline async IIFEs in control flow graph 2016-10-28 14:43:08 -07:00
Vladimir Matveev
fc93e8f6f4 update CFG to properly handle do statements 2016-10-28 14:17:01 -07:00
Nathan Shively-Sanders
988bf1fc69 Rename TransformFlags.Experimental -> ESNext 2016-10-28 10:24:30 -07:00