Commit graph

66 commits

Author SHA1 Message Date
gbracha@google.com 099e37e003 Changes for TC52 3rd edition
R=eernst@google.com

Review URL: https://codereview.chromium.org//1031323002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44726 260f80e4-7a28-3924-810f-c04153c831b5
2015-03-27 01:45:31 +00:00
gbracha@google.com ae83a06400 Assorted fixes to async: yield may suspend in async* methods; yield* skips emptysequences; definition of flatten.
R=hausner@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//1010433002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44569 260f80e4-7a28-3924-810f-c04153c831b5
2015-03-18 23:18:06 +00:00
gbracha@google.com e259e8f86f Correct reference to definition of flatten
Review URL: https://codereview.chromium.org//993213002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@44391 260f80e4-7a28-3924-810f-c04153c831b5
2015-03-11 00:59:51 +00:00
gbracha@google.com c82a633c65 Strengthen warnings for return types of async/async*/sync* functions.
R=paulberry@google.com

Review URL: https://codereview.chromium.org//891303004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43420 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 19:06:09 +00:00
gbracha@google.com 609e6ebb66 Clarify behavior of iterables and iterators with sync*.
R=lrn@google.com

Review URL: https://codereview.chromium.org//858063002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43415 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 18:19:11 +00:00
gbracha@google.com dff3b74a05 Remove restrictions on scope of doc comments.
R=sethladd@google.com

Review URL: https://codereview.chromium.org//843013003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42940 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-15 23:51:50 +00:00
gbracha@google.com 1bc0e8dc1d insure type vars are bound properly when executing field initializers. Also correct assoc tablefor ?:
R=lrn@google.com

Review URL: https://codereview.chromium.org//811953006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42785 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-12 18:52:14 +00:00
gbracha@google.com 8672603473 Fix name of spawnIsolate to spawn.
Review URL: https://codereview.chromium.org//808373003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42560 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-23 00:23:31 +00:00
gbracha@google.com 73de52110f Correct last revision
Review URL: https://codereview.chromium.org//825463002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42554 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-22 19:51:21 +00:00
gbracha@google.com 509c16c9cb Fix error in grammar for assignableExpression
Review URL: https://codereview.chromium.org//817723003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42553 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-22 19:06:55 +00:00
gbracha@google.com 0faaa550d1 Fix circular dependency between null equality and identity.
R=kmillikin@google.com

Review URL: https://codereview.chromium.org//804993005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42552 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-22 18:58:06 +00:00
gbracha@google.com 38606de2a5 Change static typing so that inherited noSuchMethod silences errors,
including undefined abstract members.

R=justinfagnani@google.com

Review URL: https://codereview.chromium.org//818463002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42521 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-19 18:44:39 +00:00
gbracha@google.com 11db20e680 Main function of a script can be function valued getter.
R=lrn@google.com

Review URL: https://codereview.chromium.org//800413003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42464 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-18 18:55:30 +00:00
eernst@google.com 93f4f00719 Working insertion of hash values; added a few labels in spec
Hash values are now computed for each "paragraph" starting with \LMHash
(which includes subsequent grammar, dartCode, itemize blocks, but stops
at \section-like commands).  Now addlatexhash.dart expects three arguments
(first the source latex file, then the destination simplified and
hash-value-annotated latex source file, and finally a file name used to
create the list of hash values emitted).  Adjusted testing accordingly.
Added a test for robustness of the hash value generation: It is checked
that lots of different "unimportant" changes make no difference for the
generated hash values (e.g., we can add/remove comments, change white
space, add \commentary{..} etc. without changing the hash values).

In order to ensure that all "structure" commands in the spec have a label,
I added an \LMLabel{..} a handful of places, following the style which is
used throughout the spec.

In dart.sty, the \renewcommand that made \LMHash{} produce a fixed
hash value has been removed such that the actual hash values are now
inserted into the generated spec PDF/DVI file.  Tests have been adjusted
to handle this difference between the spec with and without hash values
when comparing the two.

R=gbracha@google.com, lrn@google.com, ricow@google.com

Committed: https://code.google.com/p/dart/source/detail?r=41658

Reverted: https://code.google.com/p/dart/source/detail?r=41662

Review URL: https://codereview.chromium.org//652993005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41687 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-12 08:41:55 +00:00
eernst@google.com 36122ae11f Recovered \LM.. commands
Recovered the \LM.. commands inserted in order to support SHA1 hash value
markers on spec paragraphs; also recovered a couple of changes directly
required for the \LM.. commands to work.

Review URL: https://codereview.chromium.org//722573003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41686 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-12 08:27:43 +00:00
eernst@google.com 4074b50818 Revert "Working insertion of hash values; added a few labels in spec"
This reverts commit r41658.

Review URL: https://codereview.chromium.org//714883002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41662 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-11 11:39:40 +00:00
eernst@google.com 9570a582eb Working insertion of hash values; added a few labels in spec
Hash values are now computed for each "paragraph" starting with \LMHash
(which includes subsequent grammar, dartCode, itemize blocks, but stops
at \section-like commands).  Now addlatexhash.dart expects three arguments
(first the source latex file, then the destination simplified and
hash-value-annotated latex source file, and finally a file name used to
create the list of hash values emitted).  Adjusted testing accordingly.
Added a test for robustness of the hash value generation: It is checked
that lots of different "unimportant" changes make no difference for the
generated hash values (e.g., we can add/remove comments, change white
space, add \commentary{..} etc. without changing the hash values).

In order to ensure that all "structure" commands in the spec have a label,
I added an \LMLabel{..} a handful of places, following the style which is
used throughout the spec.

In dart.sty, the \renewcommand that made \LMHash{} produce a fixed
hash value has been removed such that the actual hash values are now
inserted into the generated spec PDF/DVI file.  Tests have been adjusted
to handle this difference between the spec with and without hash values
when comparing the two.

R=gbracha@google.com, lrn@google.com, ricow@google.com

Review URL: https://codereview.chromium.org//652993005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41658 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-11 10:08:12 +00:00
gbracha@google.com 27db1ea7af orrect cut/paste error that replicated an item in the list of constants and (worse) deleted another.
Review URL: https://codereview.chromium.org//715653003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41647 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-10 20:23:06 +00:00
eernst@google.com bf339367c3 Introduced hash valued location markers in the spec
Introduced support for adding SHA1 hash valued location markers
at several levels in the language specification, added long explanatory
comment at the end, added a script 'addlatexhash.dart' to normalize
spacing, remove comments, etc., in the spec, such that the hash values
are more robust than they would be with a direct usage of the spec.

The script passes the "dvi2tty test", that is, when the location markers
are empty, the resulting *.dvi files created from dartLangSpec.tex and
from the version processed by the script give rise to the same text via
dvi2tty, i.e., the script does not destroy the spec.

R=gbracha@google.com, ricow@google.com

Review URL: https://codereview.chromium.org//646003002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41191 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-20 14:02:23 +00:00
gbracha@google.com 3f7b6cf6a0 Fix typos due to TeXShop quote (mis)processing
R=eernst@google.com

Review URL: https://codereview.chromium.org//639953003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41078 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-13 17:12:08 +00:00
gbracha@google.com 8080adfa27 Added missing keywords for async etc.
R=eernst@google.com

Review URL: https://codereview.chromium.org//635913002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40992 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-08 15:55:04 +00:00
eernst@google.com 422284dc73 Await always awaits
Fetched from https://codereview.chromium.org/572283003/
and committed to resolve commit issue for Gilad Bracha

Review URL: https://codereview.chromium.org//575413002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40427 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-18 09:09:55 +00:00
gbracha@google.com 6a6b49775d async/await, async*, sync* and yield
Review URL: https://codereview.chromium.org//498873003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40052 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-09 20:51:31 +00:00
gbracha@google.com b55e02f083 Add enums to the main grammar entry point.
Review URL: https://codereview.chromium.org//493453003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39386 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-19 21:53:33 +00:00
gbracha@google.com 60f5a0c18d Enums.
R=kasperl@google.com

Review URL: https://codereview.chromium.org//483873002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39385 260f80e4-7a28-3924-810f-c04153c831b5
2014-08-19 21:39:45 +00:00
gbracha@google.com f9ccd0d318 Clarify that prefixes may not be built-in identifers
R=kustermann@google.com

Review URL: https://codereview.chromium.org//415333003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38567 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-25 00:49:05 +00:00
gbracha@google.com b500b5333a Change rules so prefixes obey lexical scope. Do this by basing member access on objects uniformly.
R=lrn@google.com

Review URL: https://codereview.chromium.org//396733003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38518 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-23 20:29:48 +00:00
gbracha@google.com 5dfa44d0a2 Explicitly specify what happens when noSuchMethod(x) is not found
R=lrn@google.com, regis@google.com

Review URL: https://codereview.chromium.org//389403002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38212 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-14 20:15:23 +00:00
gbracha@google.com c85dae8a03 Rtrying change to make const classes finals constant
Review URL: https://codereview.chromium.org//387733003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38139 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-10 23:13:07 +00:00
gbracha@google.com 53f5ad1cd3 Integrated deferred loading into main spec.
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//373333002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38091 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-09 17:19:51 +00:00
gbracha@google.com 12422f1083 Replace subtyping with << for function type emulation.
R=jwren@google.com

Review URL: https://codereview.chromium.org//372083002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38072 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-08 21:46:38 +00:00
gbracha@google.com 339513f7e3 Eliminate redundant condition for interface inheritance.
R=brianwilkerson@google.com, paulberry@google.com

Review URL: https://codereview.chromium.org//298803014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36579 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-23 18:36:26 +00:00
gbracha@google.com 6ef09c32dd main function may take an argument.
R=lrn@google.com

Review URL: https://codereview.chromium.org//280473004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36450 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-21 20:57:25 +00:00
gbracha@google.com f9d663f190 Modify identity of NaNs so they are identical iff they are bit identical.
R=lrn@google.com, srdjan@google.com

Review URL: https://codereview.chromium.org//274963005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36187 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-14 20:06:21 +00:00
gbracha@google.com 2f93268ba1 ECMA modifications and minor fixes since.
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//272723003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35928 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-08 18:23:07 +00:00
gbracha@google.com 926d5bb14b Clarify that dart system libs have lower priority regardless how imported.
R=johnniwinther@google.com, kasperl@google.com

Review URL: https://codereview.chromium.org//208293006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34378 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-25 18:15:48 +00:00
gbracha@google.com 80f6cd58e6 Ensure warnings are given on logical boolean expressions and for loops where booleans are expected but the type is not bool.
R=brianwilkerson@google.com, lrn@google.com

Review URL: https://codereview.chromium.org//206883003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34260 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-21 17:42:02 +00:00
gbracha@google.com 78776f9781 Changes required for ECMA standardization, plus allow void in getter return type.
R=ahe@google.com, lrn@google.com

Review URL: https://codereview.chromium.org//206743002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34201 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-20 20:23:43 +00:00
gbracha@google.com 325c2d8f53 Clarify inheritance rule so that warning is given if no suitable *concrete* method is declared yet the interface requires it.
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org//189163009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33498 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-10 17:24:42 +00:00
gbracha@google.com 708f25bdef Correct type rules following changes to getter behavior.
R=lrn@google.com

Review URL: https://codereview.chromium.org//186883003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33466 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-07 23:39:03 +00:00
gbracha@google.com 6d58ce9bfe Revise spec to agree with implementations for meaning of getter/variable and setter references. While the actual difference were only in a few odd cases, the new text should also be clearer.
R=hausner@google.com, lrn@google.com

Review URL: https://codereview.chromium.org//177283007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33287 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-04 18:37:37 +00:00
gbracha@google.com 08eb68c466 Libraries can be private.
R=ahe@google.com

Review URL: https://codereview.chromium.org//165483004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33050 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-26 02:42:23 +00:00
rmacnak@google.com fd3d616818 Minor spec typos.
R=gbracha@google.com

Review URL: https://codereview.chromium.org//157603005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32564 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-11 18:07:02 +00:00
gbracha@google.com 0e10e686fc Tweak text to clarify that using atype variable in an expression in a static method is a compile time error.
R=regis@google.com

Review URL: https://codereview.chromium.org//136473013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31940 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-18 00:16:11 +00:00
gbracha@google.com 39b5ace1f8 Clarified use of const in for-in loop is illegal.
R=srdjan@google.com

Review URL: https://codereview.chromium.org//140743006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31904 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-17 00:13:26 +00:00
gbracha@google.com 01e4d829f4 Correct oversight so that no warning is given if a class implements Function, has no call() method but declares its own noSuchMethod().
R=brianwilkerson@google.com, rmacnak@google.com

Review URL: https://codereview.chromium.org//137763002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31795 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-14 18:46:55 +00:00
gbracha@google.com 9cf58fbd7c Update spec version number to 1.1 for release.
Review URL: https://codereview.chromium.org//134523006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31715 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-10 22:08:23 +00:00
gbracha@google.com 49db6198af Clarify that part directives and headers can carry metadata.
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//128613004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31622 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-08 19:31:22 +00:00
gbracha@google.com 55021ce277 Change specification of @proxy to be compatible with implemementation.
R=brianwilkerson@google.com, kasperl@google.com

Review URL: https://codereview.chromium.org//93153002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31433 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-02 22:14:50 +00:00
gbracha@google.com be709f52ba Version 1.0. Mainly formatting corrections.
R=rmacnak@google.com

Review URL: https://codereview.chromium.org//70383005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30211 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-12 23:05:52 +00:00