Commit Graph

3345 Commits

Author SHA1 Message Date
Peter von der Ahé f815b4cba7 Add Loader.computeTypeBuilder
Change-Id: Ida90356e4675b95bdeebe2962aa7359e64c6bc93
Reviewed-on: https://dart-review.googlesource.com/c/92123
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-13 10:51:55 +00:00
Aske Simon Christensen 250f9665fb [CFE] Get constants backend from backend target.
Change-Id: I04286cd38eb45ca38f8335d896c503becad16566
Reviewed-on: https://dart-review.googlesource.com/c/92136
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2019-02-12 09:56:57 +00:00
Aske Simon Christensen b7afb22323 [CFE] Eliminate redundant coreTypes parameter.
Change-Id: Ie76a70454ef6dd7e60b916e2820c1d4e78b3e88d
Reviewed-on: https://dart-review.googlesource.com/c/92134
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-02-12 09:56:57 +00:00
Aske Simon Christensen 44681fa98e [CFE] Move DDC specific behavior into ConstantsBackend.
This avoids subclassing the constant evaluator in DDC.

Change-Id: If529761dc3fac474fade925bf0daaff51ad6e71b
Reviewed-on: https://dart-review.googlesource.com/c/92046
Reviewed-by: Jenny Messerly <jmesserly@google.com>
2019-02-12 09:56:57 +00:00
Jens Johansen 5e48ccb808 Give more context when initializing from dill fails
Previously, if failing when trying to load from a dill it would say
something like

Warning: Tried to initialize from a previous compilation
(build/app.dill), but couldn't. Error message was
'NoSuchMethodError: The method 'getReference' was called on null.
Receiver: null
Tried calling: getReference()'. This might be a bug.
The Dart team would greatly appreciate if you would take a moment to
report this problem at http://dartbug.com/new.

Which really doesn't give us a lot to go on.

This CL changes that to also give us a little go to on, and report
something like

Warning: Tried to initialize from a previous compilation
(org-dartlang-test:///initializeFrom.dill), but couldn't.
Error message was 'NoSuchMethodError: The method 'getReference' was
called on null.
Receiver: null
Tried calling: getReference()'. Stacktrace included '#0      Object.noSuchMethod (dart:core/runtime/libobject_patch.dart:50:5)
#1      BinaryBuilder.readLibraryReference (package:kernel/binary/ast_from_binary.dart:692:9)
#2      BinaryBuilder.readLibraryDependency (package:kernel/binary/ast_from_binary.dart:837:25)
#3      BinaryBuilder._readLibraryDependencies (package:kernel/binary/ast_from_binary.dart:829:33)
#4      BinaryBuilder.readLibrary (package:kernel/binary/ast_from_binary.dart:803:5)
#5      BinaryBuilder._readOneComponent (package:kernel/binary/ast_from_binary.dart:634:7)
#6      BinaryBuilder.readComponent (package:kernel/binary/ast_from_binary.dart:441:7)
#7      IncrementalCompiler.initializeFromDill (package:front_end/src/fasta/incremental_compiler.dart:395:14)
<asynchronous suspension>
#8      IncrementalCompiler.computeDelta.<anonymous closure> (package:front_end/src/fasta/incremental_compiler.dart:126:23)
<asynchronous suspension>
#9      CompilerContext.runInContext.<anonymous closure>.<anonymous closure> (package:front_end/src/fasta/compiler_context.dart:120:46)
#10     new Future.sync (dart:async/future.dart:224:31)
#11     CompilerContext.runInContext.<anonymous closure> (package:front_end/src/fasta/compiler_context.dart:120:19)
#12     _rootRun (dart:async/zone.dart:1124:13)
#13     _CustomZone.run (dart:async/zone.dart:1021:19)
#14     _runZoned (dart:async/zone.dart:1516:10)
#15     runZoned (dart:async/zone.dart:1463:12)
#16     CompilerContext.runInContext (package:front_end/src/fasta/compiler_context.dart:119:12)
#17     IncrementalCompiler.computeDelta (package:front_end/src/fasta/incremental_compiler.dart:108:20)
<asynchronous suspension>
#18     initializedCompile (file:///usr/local/google/home/jensj/code/dart-sdk/sdk/pkg/front_end/test/incremental_load_from_dill_test.dart:397:51)
<asynchronous suspension>
#19     basicTest (file:///usr/local/google/home/jensj/code/dart-sdk/sdk/pkg/front_end/test/incremental_load_from_dill_test.dart:167:34)
<asynchronous suspension>
#20     RunCompilations.run (file:///usr/local/google/home/jensj/code/dart-sdk/sdk/pkg/front_end/test/incremental_load_from_dill_test.dart:101:15)
<asynchronous suspension>
#21     ChainContext.run.doStep.<anonymous closure> (package:testing/src/chain.dart:180:33)
<asynchronous suspension>
#22     new Future.<anonymous closure> (dart:async/future.dart:176:37)
#23     _rootRun (dart:async/zone.dart:1120:38)
#24     _CustomZone.run (dart:async/zone.dart:1021:19)
#25     _CustomZone.runGuarded (dart:async/zone.dart:923:7)
#26     _CustomZone.bindCallbackGuarded.<anonymous closure> (dart:async/zone.dart:963:23)
#27     _rootRun (dart:async/zone.dart:1124:13)
#28     _CustomZone.run (dart:async/zone.dart:1021:19)
#29     _CustomZone.bindCallback.<anonymous closure> (dart:async/zone.dart:947:23)
#30     Timer._createTimer.<anonymous closure> (dart:async/runtime/libtimer_patch.dart:21:15)
#31     _Timer._runTimers (dart:isolate/runtime/libtimer_impl.dart:382:19)
#32     _Timer._handleMessage (dart:isolate/runtime/libtimer_impl.dart:416:5)
#33     _RawReceivePortImpl._handleMessage (dart:isolate/runtime/libisolate_patch.dart:171:12)
'. This might be a bug. The Dart team would greatly appreciate if you would take a moment to report this problem at http://dartbug.com/new.

which will hopefully allow us to actually debug any such reports.

Change-Id: I13bdd4f96c1e4bb2dcce91e533442b48c87c9e0c
Reviewed-on: https://dart-review.googlesource.com/c/85348
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2019-02-11 09:58:40 +00:00
Kevin Millikin be79eb4517 Ship experiment 'set-literals'
Change-Id: Ief182017752b87ef099ac5140ff781cbb14d76a9
Reviewed-on: https://dart-review.googlesource.com/c/92125
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
2019-02-08 16:17:55 +00:00
Johnni Winther 3fab17ee58 Display CFE message contexts
Change-Id: I6e1ab11a3520e284e9adef2210249a171cfc1eab
Reviewed-on: https://dart-review.googlesource.com/c/92285
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2019-02-08 09:01:29 +00:00
Aske Simon Christensen ac95355fdb Compiler option for environment defines
Change-Id: I50f0085ebbc2c9a3af26769a0004bfb8361d85f2
Reviewed-on: https://dart-review.googlesource.com/c/91340
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2019-02-07 16:15:52 +00:00
Peter von der Ahé 0e4f917759 Implement subtyping of optional function parameters
Change-Id: I25e7fecf8c3080c1558f6a2d499b9ca618b42824
Reviewed-on: https://dart-review.googlesource.com/c/92122
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2019-02-07 14:10:01 +00:00
Peter von der Ahé c84a0bd932 Infer mixin applications in hierarchy builder
Change-Id: Ic58e4a14f4ff4601bec157364b1262283374383f
Reviewed-on: https://dart-review.googlesource.com/c/92051
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-07 14:10:01 +00:00
Peter von der Ahé 2fd96e75d6 Separate MixinInferrer from Kernel ClassHierarchy
Change-Id: If05db17e6ad7625015b3edf2f74081d81ebbf70d
Reviewed-on: https://dart-review.googlesource.com/c/92050
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-07 14:10:01 +00:00
Peter von der Ahé 8927bc8d38 Remove ConstraintGatherer's dependency on TypeSchemaEnvironment
Change-Id: I4f371d327033afeb8d36556b9e1d1dde4e2dd5f1
Reviewed-on: https://dart-review.googlesource.com/c/92049
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-07 14:10:01 +00:00
Peter von der Ahé 5a98aa704b Extract StandardBounds to a mixin
Change-Id: I2bbae29fa4306ef45795cc11aec19bc2ada46aa2
Reviewed-on: https://dart-review.googlesource.com/c/92048
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-07 14:10:01 +00:00
Peter von der Ahé 86f5aed890 Finish implementing IsTypedefSubtypeOf
Change-Id: Ib62f2100a85e10e4ef1eed3ed12144a90bc5e714
Reviewed-on: https://dart-review.googlesource.com/c/92043
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-07 14:10:01 +00:00
Peter von der Ahé a8a9171dd8 Avoid crashing on this property access
Fixes https://github.com/dart-lang/sdk/issues/35875

Change-Id: I5ae2f73cd792aae165e787d7856b0af9a7c2e19e
Reviewed-on: https://dart-review.googlesource.com/c/92282
Commit-Queue: Peter von der Ahé <ahe@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Auto-Submit: Peter von der Ahé <ahe@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-02-07 12:12:19 +00:00
Peter von der Ahé b040d3c853 Improve error message on ambiguous constructors
Fixes https://github.com/dart-lang/sdk/issues/34515

Change-Id: Ibbecab411515309db9f45f7b59283f54d878223a
Reviewed-on: https://dart-review.googlesource.com/c/92261
Auto-Submit: Peter von der Ahé <ahe@google.com>
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Kevin Millikin <kmillikin@google.com>
2019-02-07 09:51:49 +00:00
Kevin Millikin 2b8560f4b2 [Fasta] Add spread and control-flow collection flags
Also stop skipping the corresponding tests.  Add status file entries
for Fasta and VM configurations.

Change-Id: Iecc1e048915df598ba69ac79261cfc836d38f95a
Reviewed-on: https://dart-review.googlesource.com/c/92045
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Auto-Submit: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-02-06 10:30:18 +00:00
Peter von der Ahé 8d5b5bba41 Allow for non-function types in alias builders.
Change-Id: I735ee2df97a21a5cef38d18bdb35f83117749be6
Reviewed-on: https://dart-review.googlesource.com/c/92042
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2019-02-05 10:05:32 +00:00
Peter von der Ahé 824598b17d Rename files related to type aliases
Change-Id: I5e8ff98efad790c1ebf15dc48b4d92a1b7777338
Reviewed-on: https://dart-review.googlesource.com/c/91825
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-05 10:05:32 +00:00
Peter von der Ahé d7d195283a Add missing type arguments
Change-Id: I7020eabfe9724d8132820485adbb666ba0e53ba6
Reviewed-on: https://dart-review.googlesource.com/c/92041
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-05 10:05:32 +00:00
Peter von der Ahé 6efbd07145 Rename FunctionTypeAliasBuilder to TypeAliasBuilder
Change-Id: I33d8ee4e6d78433a3d7219faed0c19eb11d0fb8a
Reviewed-on: https://dart-review.googlesource.com/c/91822
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-05 10:05:32 +00:00
Peter von der Ahé f45d103d67 Finish implementing IsTypeParameterSubtypeOf
Change-Id: I5e37f87946423b4c1373fb49b2ef482172ce2c87
Reviewed-on: https://dart-review.googlesource.com/c/91821
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-05 10:05:32 +00:00
Kevin Millikin 0828d2c786 [Fasta] Implement exact types for Set literals
Set literals have an exact type of Set<T> for some T.  An implicit
downcast to a subtype is a static error.

Change-Id: I922b078b1b9e595243520e73c7130c23fe91f454
Reviewed-on: https://dart-review.googlesource.com/c/91640
Commit-Queue: Kevin Millikin <kmillikin@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Aske Simon Christensen <askesc@google.com>
2019-02-05 07:43:52 +00:00
Aske Simon Christensen 8a45b5eb57 Move environment handling into the front-end constant evaluator.
Change-Id: Id01bad9d9dbb7d5f6104a0f633d8303fecfa29db
Reviewed-on: https://dart-review.googlesource.com/c/91227
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Commit-Queue: Aske Simon Christensen <askesc@google.com>
2019-02-04 13:31:30 +00:00
Peter von der Ahé 967b5fbac3 Finish implementing IsFunctionSubtypeOf
Change-Id: I5bd0aa4cbf2e5e16771bbfe8bd2d4ee3f8de2862
Reviewed-on: https://dart-review.googlesource.com/c/91820
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2019-02-01 13:07:57 +00:00
Peter von der Ahé 0d7bdd734a Ensure that top types are equivalent.
Change-Id: I7555a2b505aa750bff6f0050279fbe52608ed760
Reviewed-on: https://dart-review.googlesource.com/c/91800
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-01 13:07:57 +00:00
Peter von der Ahé d55f95e344 Add Types.isSameTypeKernel
Change-Id: I4acc0ae4cde4fd9b02efb690b23c93146f686ac6
Reviewed-on: https://dart-review.googlesource.com/c/91721
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-01 13:07:57 +00:00
Peter von der Ahé 7fa0376af7 Implement subtype rules for Null in Fasta types
Change-Id: I5ca9e1b16a463ad8101139769b189f3e9d00c52c
Reviewed-on: https://dart-review.googlesource.com/c/91720
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-01 13:07:57 +00:00
Jens Johansen d9072d5272 Re-issue all problems in the incremental compiler
Prior to this change, old problems (warnings, errors, etc) would not be
re-issued for files not actually recompiled when recompiling.

As an example, not making any change and recompiling it would seem like
everything was good.

With this change, all problems should be issued again.

Change-Id: Ia410edba27438d8a2f1842d9f4d81d0592571101
Reviewed-on: https://dart-review.googlesource.com/c/91747
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2019-02-01 12:49:57 +00:00
Peter von der Ahé 33f167b039 Complete the implemention of IsInterfaceSubtypeOf.
Change-Id: I0be7af83508536c40ce0e6cdbb0d54d4d8e9dd8b
Reviewed-on: https://dart-review.googlesource.com/c/90945
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-01 11:51:06 +00:00
Peter von der Ahé 534825020a Check intersection types in subtype tests
Change-Id: Ib24c11272370c54428c92b2d09fda6e3b29907de
Reviewed-on: https://dart-review.googlesource.com/c/90943
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-01 11:51:06 +00:00
Peter von der Ahé ea0d98d98a Check FutureOr in subtype tests
Change-Id: I1cb401b3e6fdcfc103769380a4297c6ff2c0b6b0
Reviewed-on: https://dart-review.googlesource.com/c/90940
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-02-01 11:51:06 +00:00
Jens Johansen 014124e763 (Some) DiagnosticMessages can be serialized to/from json.
This is needed to serialize and deserialize problems to dill and
re-issuing problems as needed.

Change-Id: Id22d1c86f43b1b08c5e5a4d133869075e9b0c100
Reviewed-on: https://dart-review.googlesource.com/c/91743
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2019-02-01 11:07:27 +00:00
Jens Johansen eb956a2516 Add synthetic bit to Library flags
Fasta can generate synthetic libraries.
Previously we didn't include them when serializing, but that leaves
references in the binary to libraries that doesn't exist which isn't
ideal.

This change includes them, and adds a flag to kernel Libraries such that
we know they are synthetic.

Change-Id: Ied25a21cd1f384d318347021bc7ec18dae3a4e05
Reviewed-on: https://dart-review.googlesource.com/c/91722
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Peter von der Ahé <ahe@google.com>
2019-02-01 11:00:26 +00:00
Jens Johansen e9597684fe Fix for incremental compiler swallowing certain errors
Prior to this change, problems issued in hierarchy.mixinInferrer could
be swallowed up because it was reported through a wrong loader that
had already issued the error.

Change-Id: Iecbc180ca8a0bfaa73db202e4cba9755812d1e3b
Reviewed-on: https://dart-review.googlesource.com/c/91746
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-02-01 10:59:26 +00:00
Peter von der Ahé d6608f19c0 Check function types in subtype tests
Change-Id: I27b38e2a6edc67e13662aa16da2fde13dc2501e9
Reviewed-on: https://dart-review.googlesource.com/c/90922
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-01-31 08:58:10 +00:00
Peter von der Ahé a6a9d4854b Start checking type arguments in subtype tests
Change-Id: I4832eac17be7129cfe846df0f088e59b8fa9cd6c
Reviewed-on: https://dart-review.googlesource.com/c/90921
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-01-31 08:58:10 +00:00
Peter von der Ahé dd70ecd5c0 Substitute type variables when computing class hierarchy
Change-Id: Ic447c2ae8aaa0bc033749de68bc6a93f6e6fcb1e
Reviewed-on: https://dart-review.googlesource.com/c/90741
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-01-31 08:58:10 +00:00
Peter von der Ahé 85c5082cf4 Support Kernel classes in ClassHierarchyBuilder
Change-Id: I0de3cc8c1e51aa3b429fd5aba3cdf7e0e5281154
Reviewed-on: https://dart-review.googlesource.com/c/90706
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-01-31 08:58:10 +00:00
Peter von der Ahé 18ff842341 Start testing Fasta types implementation
Change-Id: I93a95319cc6390beaddc36a2b35737a097096fda
Reviewed-on: https://dart-review.googlesource.com/c/90705
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-01-31 08:58:10 +00:00
Jens Johansen 71bee8f05e Fix serializing procdure when realClass is Object from dart:core.
Bug: 34224
Change-Id: I244ed3c15a2e134f1599588a156a7ff45917d4be
Reviewed-on: https://dart-review.googlesource.com/c/91641
Reviewed-by: Kevin Millikin <kmillikin@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-01-30 08:44:05 +00:00
Konstantin Shcheglov b196cd2acb Issue 34437. Restore checking that optional parameters in derived classes should have the same default values as overridden.
Downgrade INVALID_OVERRIDE_DIFFERENT_DEFAULT_VALUES_NAMED and INVALID_OVERRIDE_DIFFERENT_DEFAULT_VALUES_POSITIONAL to warnings.

Bug: https://github.com/dart-lang/sdk/issues/34437
Change-Id: I4399839e04135a5d9a557c0ab06f319d9759af23
Reviewed-on: https://dart-review.googlesource.com/c/91460
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-29 22:35:15 +00:00
Dan Rubel 09e6a689c2 parse nested control flow collection entries
Change-Id: Id50c0a53a51f076dd75dd5bc13a694663449bc83
Reviewed-on: https://dart-review.googlesource.com/c/91400
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-29 17:53:58 +00:00
Dan Rubel 213cfdc85e Update AstBuilder to generate new for statement structure
... if control flow or spread collection entries are enabled.

Change-Id: I8718c1f7a649b7a2a7c9e376a6bf67c1df0542cf
Reviewed-on: https://dart-review.googlesource.com/c/91320
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-29 17:53:58 +00:00
Dan Rubel 93a56336a3 Parse simple for control flow collection entires
... and address comments in:
https://dart-review.googlesource.com/c/sdk/+/91144
https://dart-review.googlesource.com/c/sdk/+/90901

Change-Id: I7a9288bf28e069832193bd8a196a11f9a407b20d
Reviewed-on: https://dart-review.googlesource.com/c/91300
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2019-01-29 17:53:58 +00:00
Peter von der Ahé f5fd281150 Prevent unsound promoted bounds from being used as arguments
Fixes https://github.com/dart-lang/sdk/issues/35100

Change-Id: I65f73f40d0ea970f0631599e01b177412fc32a40
Reviewed-on: https://dart-review.googlesource.com/c/90390
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-01-29 14:46:04 +00:00
Jens Johansen cf56801308 Garbage-collect compiled libraries
If - for instance - a file (say 'main.dart') tries to include a part
(say 'lib.dart') that is not part of that file (i.e. doesn't state
something like 'part of "main.dart"'), and the file ('lib.dart') is not
otherwise used, before this change, the library ('lib.dart') would be
included in the first comile, but on subsequent re-compiles wouldn't
include it because it's not referenced, nor ever cleaned up
(and would thus be re-compiled.)

This change garbage-collects the library as it's not referenced.

Change-Id: I8fa90b3ae6fc3d99af9fec780abe62855e653ddb
Reviewed-on: https://dart-review.googlesource.com/c/90385
Reviewed-by: Peter von der Ahé <ahe@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2019-01-29 14:25:44 +00:00
Peter von der Ahé f822d0abb8 Make CoreType test friendly
The classes Future and Stream are exported by dart:core.
By attempting to look up FutureOr in dart:core before dart:async,
we support simple a simple test scenario where there's only one
platform library.

Change-Id: I76627f89957b91fbdb52a7772c177a769c37cecb
Reviewed-on: https://dart-review.googlesource.com/c/90381
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-01-29 13:29:32 +00:00
Peter von der Ahé 97cb74cf63 Tweak the subtype rule for Null
Change-Id: I3c1f1af40f5930a02355f8d986a27db606998096
Reviewed-on: https://dart-review.googlesource.com/c/90980
Commit-Queue: Peter von der Ahé <ahe@google.com>
Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
2019-01-29 10:04:21 +00:00
Peter von der Ahé 5fbf15d9c4 Mixins have no static members
Change-Id: I93b43ad2d58ab2804ed7deafeadb6346eade9eab
Reviewed-on: https://dart-review.googlesource.com/c/91481
Reviewed-by: Jens Johansen <jensj@google.com>
Commit-Queue: Peter von der Ahé <ahe@google.com>
2019-01-29 09:54:52 +00:00