Commit Graph

26317 Commits

Author SHA1 Message Date
Vladimir Matveev d7f67083b2 check groups of local symbols 2014-07-24 17:03:33 -07:00
Anders Hejlsberg a515b199b7 Better error messages in function calls.
Fixes #93.
This is an evolution of #220.
2014-07-24 17:00:03 -07:00
Dan Quirk d91c59bd29 Fix minor formatting issues 2014-07-24 16:04:37 -07:00
Vladimir Matveev 48ff93963b added comments 2014-07-24 13:02:37 -07:00
Vladimir Matveev 6572c826a1 update check for object literal properties according to ECMA spec 2014-07-24 13:02:31 -07:00
Vladimir Matveev 9112a0e2e2 enabled strict mode 2014-07-24 13:01:25 -07:00
Jason Freeman fde2591d6f Add interface LabelledStatementInfo 2014-07-24 12:56:03 -07:00
Jason Freeman 742637bec9 Add tracking for labelled statements, and errors on labelled jumps 2014-07-24 12:36:10 -07:00
Dan Quirk 439ee1eaee Merge pull request #223 from Microsoft/linuxTestFixes
Linux test fixes
2014-07-23 17:22:47 -07:00
Dan Quirk 5d85421262 More cleanup 2014-07-23 17:14:17 -07:00
Dan Quirk ef2ffc6d78 Cleanup 2014-07-23 17:10:38 -07:00
Jason Freeman b9971f2876 Add consumption points and error reporting for labelled statement errors 2014-07-23 16:48:18 -07:00
Anders Hejlsberg e742694b1a Merge pull request #199 from Microsoft/reservedWordsInTypeQueries
Allow reserved words in type queries.
2014-07-23 15:52:09 -07:00
Jason Freeman 1a66243d4f Remove inModuleBody 2014-07-23 14:09:17 -07:00
Daniel Rosenwasser 57d7cf54c6 Improved "certainty" when parsing arrow-function-lookin' expressions. 2014-07-23 13:31:24 -07:00
Jason Freeman 76804eb1f9 Add errors for break and continue statements 2014-07-23 12:07:46 -07:00
Jason Freeman e2617750b1 Track control flow contexts in the parser, and give errors for break, continue, return 2014-07-23 11:57:34 -07:00
Jason Freeman 29284cb1b9 Merge branch 'master' into errorOnWithStatement 2014-07-23 11:53:58 -07:00
Jason Freeman ed3d740df4 Merge branch 'master' into errorOnWithStatement 2014-07-23 11:52:40 -07:00
Daniel Rosenwasser 5fc2792297 Covered more cases for arrow functions omitting arrows.
Specifically where we have a full signature followed by an open curly brace.
2014-07-23 11:49:51 -07:00
Vladimir Matveev d10f2e713e do not propagate property name as name for function expression 2014-07-23 11:48:29 -07:00
Anders Hejlsberg 1c594d06a2 Addressing CR feedback.
Making allowReservedWords parameter of parseEntityName non-optional.
2014-07-23 10:17:39 -07:00
Dan Quirk 3ad77c6ea0 Be less clever, just use \r\n for newlines by default, tests can opt into different newlines, fix one more file casing test 2014-07-23 03:27:56 -07:00
Dan Quirk ec9d25f980 Trying to fix newlines in sourcemap baselines for *nix 2014-07-23 15:51:03 -07:00
Daniel Rosenwasser 0e10fc76b8 Removed parentheses around arrow function parameters.
As per feedback in pull request #147.
2014-07-22 17:08:12 -07:00
Daniel Rosenwasser 5b6bb5b649 Improved lookahead for arrow functions.
Fixes issue #34.

Specifically:
    * We no longer automatically assume "()" is a function expression. It must be followed by an arrow, colon, or curly brace.
    * If an arrow is missing following a signature, but a curly brace is present, we assume the user forgot the arrow and try to parse the body anyway.
2014-07-22 17:01:10 -07:00
Anders Hejlsberg 0550b93635 Allow reserved words in type queries.
Fixes #181.
2014-07-22 15:11:24 -07:00
Daniel Rosenwasser c8fc26a20a Merge pull request #147 from Microsoft/noReturnExpression
Complain when a non-void function lacks a return expresson.
2014-07-22 13:46:54 -07:00
Jason Freeman f79cba2225 Type check the expression of the 'with' statement 2014-07-22 13:37:37 -07:00
Anders Hejlsberg c5db1614f6 Aligning index signature type inference with assignability rules.
Type inference now supports inferring from string index signatures to numeric index signatures.
Fixes #167.
2014-07-22 11:53:06 -07:00
Anders Hejlsberg 13d64adeb9 Merge pull request #175 from Microsoft/contextualSignatureInstantiation
Added contextual signature instantiation during type inference.
2014-07-22 10:57:01 -07:00
Anders Hejlsberg d85df9e9fa Addressing CR feedback.
Adding comment to explain source type instantiation.
Adding a test case.
2014-07-22 10:54:20 -07:00
Daniel Rosenwasser f37cf1647d Fixed misleading comment
As per Cyrus's comment in #173.
2014-07-21 23:42:23 -07:00
Jason Freeman 8cbe88b501 Give a semantic error on with statements 2014-07-21 17:10:04 -07:00
Daniel Rosenwasser 0f4e887155 Changed error message for annotated functions lacking return statements. 2014-07-21 16:42:48 -07:00
Daniel Rosenwasser 1728f7c654 Changed check on annotated functions/getters to only look for return statements. 2014-07-21 16:42:46 -07:00
Daniel Rosenwasser 69018e635a Minor renaming. 2014-07-21 16:42:45 -07:00
Daniel Rosenwasser b7343c214d Removed TODO relating to the task I just fixed. 2014-07-21 16:42:43 -07:00
Daniel Rosenwasser d33127ad34 Complain when a non-void/any function lacks a return expresson.
In effect this fixes #62.

Also
    - Changes the error message for get accessors lacking return expressions.
    - Actually checks for return expressions instead of return statements for get-accessors.
    - Removes fancy quotes.
    - Corrects errors in the compiler caught by the new check.
    - Simplified `checkAndAggregateReturnTypes` by extracting it out to `visitReturnStatements`.
2014-07-21 16:42:41 -07:00
unknown b24b28eaaa Added contextual signature instantiation during type inference.
Fixes #88.
2014-07-21 16:38:02 -07:00
Daniel Rosenwasser fa04d4d699 Changed error spans for duplicate default clauses, added tests for it. 2014-07-21 15:57:30 -07:00
Daniel Rosenwasser 4ac676f718 Added checking for switch statements with multiple default clauses. 2014-07-21 15:19:54 -07:00
unknown c3624c9b24 Addressing CR feedback. 2014-07-21 11:31:37 -07:00
Anders Hejlsberg 24dbe2dd79 Improving code and addressing code review feedback.
Binder now builds more generally useful linked list of all container declarations.
Emitter uses original spelling when creating unique local container names.
2014-07-21 11:26:24 -07:00
Anders Hejlsberg 175dba4977 Ensuring local module names are unique in emit.
Fixes #41 and #42.
2014-07-21 11:23:08 -07:00
Anders Hejlsberg 393be4687c Improving code and addressing code review feedback.
Binder now builds more generally useful linked list of all container declarations.
Emitter uses original spelling when creating unique local container names.
2014-07-21 11:17:47 -07:00
Anders Hejlsberg 85225c8f29 Ensuring local module names are unique in emit.
Fixes #41 and #42.
2014-07-21 11:17:44 -07:00
Jason Freeman 585d9bdc5f Condense all error spans to just the name for variable, class, interface, module, enum and enum member 2014-07-21 09:55:43 -07:00
Jason Freeman 3580a999c8 Address PR feedback 2014-07-21 09:40:41 -07:00
Jason Freeman 837a8935c7 Remove error about missing module flag from checker 2014-07-21 09:40:38 -07:00