Update changelog for override check fixes

Change-Id: Ic2419c1d8d4dabfc96f96f44900d8bcd9c7bab1d
Reviewed-on: https://dart-review.googlesource.com/c/77741
Commit-Queue: Aske Simon Christensen <askesc@google.com>
Reviewed-by: Leaf Petersen <leafp@google.com>
This commit is contained in:
Aske Simon Christensen 2018-10-03 14:56:43 +00:00 committed by commit-bot@chromium.org
parent eacf720d2b
commit 10b1b35418

View file

@ -4,6 +4,48 @@
### Language
* Fixed a bug (issue [32014](http://dartbug.com/32014)) that caused invalid
implementations of the interface of a class to not be reported in some cases.
For instance, the following code would not produce a compile-time error:
```dart
class A {
num get thing => 2.0;
}
abstract class B implements A {
int get thing;
}
class C extends A with B {} // 'thing' from 'A' is not a valid override of 'thing' from 'B'.
main() {
print(new C().thing.isEven); // Expects an int but gets a double.
}
```
* Fixed a bug (issue [34235](http://dartbug.com/34235)) that caused invalid
overrides between a mixin member and an overridden member in the superclass
of the mixin application to not be reported. For instance, the following
code would not produce a compile-time error:
```dart
class A {
int get thing => 2;
}
class B {
num get thing => 2.0;
}
class C extends A with B {} // 'thing' from 'B' is not a valid override of 'thing' from 'A'.
main() {
A a = new C();
print(a.thing.isEven); // Expects an int but gets a double.
}
```
### Core library changes
#### `dart:core`