@@ -15,6 +15,10 @@ information about the process, including in their change logs.
15
15
[ 1 ] : https://github.com/dart-lang/language/blob/master/working/1426-extension-types/feature-specification-views.md
16
16
[ 2 ] : https://github.com/dart-lang/language/blob/master/working/extension_structs/overview.md
17
17
18
+ 2023.10.16
19
+ - Add error for ` implements ... T ... T ... ` , like the corresponding
20
+ error with classes, mixins, etc.
21
+
18
22
2023.09.11
19
23
- Add missing rule about getter/setter signature correspondence.
20
24
@@ -769,7 +773,7 @@ declaration occurs in a non-covariant position in the representation type.
769
773
A compile-time error occurs if the representation type of an extension type
770
774
declaration is a bottom type.
771
775
772
- * Note that it is still possible for the instantiated representation type
776
+ * Note that it is still possible for the instantiated representation type
773
777
of a given extension type to be a bottom type. For example, assuming
774
778
` extension type E<X>(X x) {} ` , ` E<Never> ` would be an extension type whose
775
779
instantiated representation type is ` Never ` . The reason for this error is that
@@ -1127,6 +1131,13 @@ A compile-time error occurs if any direct or indirect superinterface of
1127
1131
_ DV_ denotes the declaration _ DV_ . * As usual, subtype cycles are not
1128
1132
allowed.*
1129
1133
1134
+ It is a compile-time error if two elements in the type list of the
1135
+ ` implements ` clause of an extension type declaration specifies the
1136
+ same type.
1137
+
1138
+ * This rule against duplicates corresponds to the existing rule for
1139
+ class, mixin, and enum declarations.*
1140
+
1130
1141
Assume that _ DV_ has two direct or indirect superinterfaces of the form
1131
1142
<code >W\< T<sub >1</sub >, .. T<sub >k</sub >> ; </code >
1132
1143
respectively
0 commit comments