Jens Johansen
36c3eccc11
[CFE] Fix issue with exports and recording dependencies
...
Before this CL we would miss some dependencies when recording
dependencies because we don't finalize exports of dill libraries we have
already finalized.
This was a previous speed-optimization that worked fine before recording
dependencies, but - as outlines above - doesn't work together with
recording dependencies.
Change-Id: I3d9abe949e2b614e9bcd03711e7b92f586373ec5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/118043
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Jens Johansen <jensj@google.com >
2019-09-20 07:24:34 +00:00
Johnni Winther
9ed45651a9
[cfe] Refactor super expressions
...
Change-Id: I9bc0c6cd86316248108440bc367239316bdbc5ac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117150
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Johnni Winther
5081eb15ee
[cfe] Refactor handling of static if-null assignment
...
Change-Id: Id29b92bc3c2463a3c36ed25c13e0de84fa355ab5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117149
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Johnni Winther
f018ce0355
[cfe] Refactor handling of static get/set/compound
...
Change-Id: I63a4834bb43ab533f3195e745105137534d83bc9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117148
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Johnni Winther
dc211c3f9d
[cfe] Refactoring handling of compound index set
...
Change-Id: If5ba12c571c77643e57669ef85f8235496d4b06b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117141
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Johnni Winther
604f443285
[cfe] Refactor handling of if-null index assignment
...
Change-Id: I0fc9c4564321144ea4215fe21bd11f671f9f9054
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116960
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Johnni Winther
54c2dd737f
[cfe] Refactor handling of index and index-set
...
Change-Id: I28336e1e01ba2f2f98d77c941b740242207bbc86
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116780
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Johnni Winther
c7a083ee5a
[cfe] Refactor handling of ++/--
...
Change-Id: Ib63b095ba52b92653c3253286d0ecc1d18a469ef
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116760
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Johnni Winther
c2f35df918
[cfe] Refactor handling of compound local/property assignment
...
Change-Id: I8a42ab364ef263b13b7a2314777d04dbb1de8038
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116520
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Johnni Winther
40d75d733b
[cfe] Refactor if-null and null-aware property access
...
Change-Id: I19a50b7d56b63c96f24daf8aaf975e0748e29cf8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116340
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-19 17:17:10 +00:00
Aske Simon Christensen
3fa2bbf202
[cfe] Fix incorrect const contexts.
...
Fixes https://github.com/dart-lang/sdk/issues/36533
Change-Id: Id157edb09ee5bf16003b33b16ecf6edc900b38f1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117324
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Aske Simon Christensen <askesc@google.com >
2019-09-19 12:01:21 +00:00
Dmitry Stefantsov
515a597710
[cfe] Remove Class.rawType
...
Bug: http://dartbug.com/38224
Change-Id: If0af5487b1d43125738575ee3e0fcd747db54fa9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117546
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-09-19 10:42:10 +00:00
Dmitry Stefantsov
a56b4ee790
[cfe] Thread nullability from source for function types
...
Closes #38216 .
Bug: http://dartbug.com/38216
Change-Id: I33def8e24555099a74fae04d658cbde7af08d7c1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117727
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-09-18 13:58:43 +00:00
asiva
4b6ab33cfa
[SDK] Reland: Remove dart:profiler library which has been deprecated since Dart 1.2
...
and remove all references to it in tests and the SDK build scripts.
Change-Id: I728770c460042596ddd14efecdc52bcf0580f592
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117584
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2019-09-17 23:19:20 +00:00
Johnni Winther
7b60ae1a0d
[cfe] Fix infer expression
...
Fixes bug introduced https://dart-review.googlesource.com/c/sdk/+/116203
Calls to inferExpression that pass an expression directly needs to handle
the returned replacement expression directly.
Change-Id: I74f7707921d6f08df3d4bee48085a8d72731acee
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/117154
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-09-16 12:29:49 +00:00
Johnni Winther
4b72fffaaf
[cfe] Use VariableSet for variable assignment
...
Change-Id: Ia94f9e1a3548e615fef111256aa2419cc1fd8c75
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116209
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-13 07:38:25 +00:00
Johnni Winther
2153a06b82
[cfe] Use PropertySet for property assignment
...
Change-Id: If16d2b9ca8bb1134d181c27ea524b8008e2f52ec
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116207
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-13 07:38:25 +00:00
Johnni Winther
4fd7bf7356
[cfe] Split inference of super property get from instance property get
...
Change-Id: I457d6a4326c879ee68113760cd86dc0250e4cfde
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116205
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-13 07:38:25 +00:00
Johnni Winther
2c6f779a76
[cfe] Remove legacyMode
...
Change-Id: I9384631af94feaf1a345958ff23e6d35c2ba4049
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/116202
Reviewed-by: Jens Johansen <jensj@google.com >
2019-09-13 07:38:25 +00:00
Dmitry Stefantsov
bdf237fa77
[cfe] Add a bit to Library to inticate if it's opted in for NNBD
...
Closes #37682 .
Bug: http://dartbug.com/37682 .
Change-Id: Ibe21cd0a1eac25a2883d2e2241d7476ca627edba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114857
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2019-09-12 12:15:56 +00:00
Dmitry Stefantsov
94b3a3f2ac
[cfe] Don't reuse type parameters of FunctionNode in its functionType
...
Closes #37536 .
Bug: http://dartbug.com/37536 .
Change-Id: I7e5d2fc59a0cf53e67c43989cf806ca7dbcc307e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115368
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-09-12 11:12:52 +00:00
Aske Simon Christensen
41c5b81818
[cfe] Special error message for illegal override of a setter by a field
...
This situation would produce an error referring to the erroneous type
as a return type instead of a paremeter/field type.
Change-Id: Ida72b0b85b448e3a05cadf38511e7e32d19986f1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115702
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Aske Simon Christensen <askesc@google.com >
2019-09-09 09:57:26 +00:00
Johnni Winther
8c13ecf443
[cfe] Handle nested on-types
...
Change-Id: Ib390f7939c487c59034bfcf1490f1ad40aebd031
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115980
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-09-06 15:49:50 +00:00
Aske Simon Christensen
0242f0c724
[kernel] FileUriExpression node
...
Change-Id: I8ea3cbeb17d555cebd6d693fbf2bb3148e9f2db3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114321
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-09-06 12:22:09 +00:00
Johnni Winther
7152fd06a5
[cfe] Handle [] and []= on extensions
...
Change-Id: Ic496d0da2f36be5701a30e0b394e6046240f7b2c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115700
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-06 09:55:29 +00:00
Johnni Winther
deb2fcf818
[cfe] Handle extension operators
...
Change-Id: Ib63d7ab486dbe130cd2e37cc8a51abb2e64b7099
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115400
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-06 09:55:29 +00:00
Dmitry Stefantsov
7ca157dfd6
[cfe] Thread nullability modifiers for some InterfaceTypes in outline
...
Closes #38212 .
Bug: http://dartbug.com/38212
Change-Id: I4127a1db46a932bd298f82053f58834b60fd4cbb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115370
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-09-06 09:29:49 +00:00
Johnni Winther
34004f7f6b
[cfe] Support modular compilation of extensions
...
Includes serialization/deserialization of Extension and
ExtensionMemberDescriptor.
Change-Id: I04df581355b0d6f9e6bfa638241c8b7f210d3ce5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115369
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-09-05 11:19:53 +00:00
Johnni Winther
28af740e83
[cfe] Follow-up fixes
...
Change-Id: I91d55176a0fbc48cdc0e0039d715a0b9fa2cbff3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115360
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-05 11:19:53 +00:00
Johnni Winther
06ae3402d7
[cfe] Support F-bounded extensions and type variable shadowing
...
Change-Id: I6fa5bf13ab8524e6262a67c6f9fe4d56c8ee5046
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115246
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-05 11:19:53 +00:00
Johnni Winther
ab8e70addd
[cfe] Handle implicit extension access inference
...
Change-Id: Ia46976af37b586a7b88e3ff8465894e6858a6759
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115210
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-03 20:10:26 +00:00
David Morgan
54b95f1c8b
Revert "[SDK] Remove dart:profiler library which has been deprecated since Dart 1.2"
...
This reverts commit 6f85cb83cf .
Reason for revert: CFE built before this CL breaks with dill built after; it expects dart:profiler to be present in the dill.
Original change's description:
> [SDK] Remove dart:profiler library which has been deprecated since Dart 1.2
> and remove all references to it in tests and the SDK build scripts.
>
> Change-Id: I65a4d71b74c66ca090eba28e922e2f70a7b2989d
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114965
> Reviewed-by: Ben Konyi <bkonyi@google.com >
> Commit-Queue: Siva Annamalai <asiva@google.com >
TBR=bkonyi@google.com ,rmacnak@google.com ,asiva@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I5fec5c7aec55377ba5cba0b55a25e67682220276
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115242
Reviewed-by: David Morgan <davidmorgan@google.com >
Commit-Queue: David Morgan <davidmorgan@google.com >
2019-09-03 14:26:26 +00:00
Johnni Winther
c50621a560
[cfe] Infer type arguments for explicit extension application
...
Change-Id: I52d97abf85eadea679f2a48563f575eca1fd8436
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115140
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-09-03 13:17:56 +00:00
Jens Johansen
00d14e7dd1
[CFE] Always start constant evaluation error where we are asked to evaluate
...
Fixes #38167
Change-Id: I57ded79835348a1e02b4949986a8b1668d3e425a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115206
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-09-03 06:16:37 +00:00
Jens Johansen
72908edb6d
[CFE] Add strong tests for errors reported at 'wrong' place
...
Change-Id: I3632d379617576e9246efb977d5147c0f5010e45
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115208
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-09-02 12:37:36 +00:00
Jens Johansen
b6880f76b0
[CFE] Add failing incremental compiler tests wrt re-issuing errors
...
If errors are caused by some file (say "a.dart") but are reported in
another library (say "b.dart") we are going to re-issue errors we
shouldn't have in the incremental compiler.
This CL introduces some test cases that currently fail.
Bug: 38167
Change-Id: I3c82fa72dab7c4714974c9caedc1906bead143ff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115202
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Jens Johansen <jensj@google.com >
2019-09-02 10:36:48 +00:00
Johnni Winther
bfec168c1e
[cfe] Use tearoff function for implicit extension method tearoff
...
Change-Id: I35ef1b15ced6bc7f29f248e35438c7e14c2a3754
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114942
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-08-30 17:08:14 +00:00
Johnni Winther
c39cddf2be
[cfe] Produce errors on invalid explicit extension application
...
Change-Id: I79fa8a58c8d46583ec5c7d980b4a8ac7005651b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114941
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-08-30 17:08:14 +00:00
asiva
6f85cb83cf
[SDK] Remove dart:profiler library which has been deprecated since Dart 1.2
...
and remove all references to it in tests and the SDK build scripts.
Change-Id: I65a4d71b74c66ca090eba28e922e2f70a7b2989d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114965
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2019-08-30 17:03:04 +00:00
Dmitry Stefantsov
a024685f3a
[cfe] Update out-of-sync .expect files
...
Change-Id: Ic3819e9763b701f1ecf15abdafa5fbd7833df633
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/115021
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2019-08-30 11:47:51 +00:00
Dmitry Stefantsov
b8cde9347a
[cfe] If type variable is its own bound, set it to InvalidType
...
The motivation for this change is that we can't compute the nullability
for such type parameter types anyways. Additionally, it stops the
cascading error in case the type variable is its own bound indirectly,
via a chain of other type variables.
Change-Id: I940f19bb47952108ac1e0d1a0ef197b373b6b8e3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114946
Reviewed-by: Johnni Winther <johnniwinther@google.com >
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com >
2019-08-30 10:11:40 +00:00
Dmitry Stefantsov
d4342b9021
[cfe] Print Kernel's type-parameter types in more details in text
...
Change-Id: I10cb27cba22ce91eca4e5cceed53a2753c6d4573
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114943
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-08-30 10:11:40 +00:00
Johnni Winther
f10c37b0e5
[cfe] Handle explicit extension instance access.
...
Including most cases of explicit generic extension instance access.
Change-Id: I43a9d72ef9ddb1dc2cc83f66cb54931b07240d07
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114859
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-08-30 09:12:41 +00:00
Johnni Winther
e3563528e6
[cfe] Add tear off function for extension instance methods.
...
Change-Id: Ia92640f5dd99cd3eeb5ba737a646472b5f5260a0
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114844
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-08-29 09:51:53 +00:00
Johnni Winther
63133a2a8c
[cfe] Handle extension instance method tearoff
...
Change-Id: I56f422ed94fbc328030dce1b01df81954969bb01
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114506
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-08-28 22:16:21 +00:00
Johnni Winther
a147d4e8d2
[cfe] Handle simple use of extension instance members
...
Change-Id: Ic1a949c0dca9327763e01458211e477de13c222f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114504
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com >
2019-08-28 22:16:21 +00:00
Jens Johansen
fda435a056
[CFE] Add more incremental compiler compiler test
...
Change-Id: I588cd2c09741e98e712b988f0d872c9e5e148c7a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/100845
Commit-Queue: Jens Johansen <jensj@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2019-08-27 06:09:56 +00:00
Johnni Winther
7f9f4ad774
[cfe] Delete legacy tests
...
+ make sdk_test test non-legacy
Change-Id: Ie9861e54d12301f454d4fccf6eccd3516e0387d3
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113825
Reviewed-by: Jens Johansen <jensj@google.com >
Commit-Queue: Johnni Winther <johnniwinther@google.com >
2019-08-21 09:01:44 +00:00
Johnni Winther
91c8cf7167
[cfe] Support per folder experimental flags in testcases
...
Change-Id: Ia4d795959f6b192d83c97c45870c5fc59d406f4c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113824
Reviewed-by: Jens Johansen <jensj@google.com >
2019-08-21 09:01:44 +00:00
Johnni Winther
027071318f
[cfe] Change outline test to test strong mode
...
Closes #37904
Change-Id: I75cd093922dbcf29c0b073d6a37aaba9d6c1f5f2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/113697
Commit-Queue: Johnni Winther <johnniwinther@google.com >
Reviewed-by: Jens Johansen <jensj@google.com >
2019-08-20 13:51:10 +00:00