Skip to content

Commit

Permalink
Merge branch 'main' into disable-region
Browse files Browse the repository at this point in the history
# Conflicts:
#	CHANGELOG.md
  • Loading branch information
munificent committed Aug 14, 2024
2 parents 107724b + 8c0e44e commit 393d0a4
Show file tree
Hide file tree
Showing 4 changed files with 72 additions and 0 deletions.
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@
and `// dart format on` comments. Note: This only works using the new tall
style and requires passing the `--enable-experiment=tall-style` experiment
flag (#361).
* Preserve type parameters on old-style function-typed formals that also use
`this.` or `super.` (#1321).
* Remove temporary work around for analyzer 6.2.0 from dart_style 2.3.6.
* Require `package:analyzer` `>=6.5.0 <7.0.0`.

Expand Down
2 changes: 2 additions & 0 deletions lib/src/short/source_visitor.dart
Original file line number Diff line number Diff line change
Expand Up @@ -1339,6 +1339,7 @@ class SourceVisitor extends ThrowingAstVisitor {
token(node.thisKeyword);
token(node.period);
token(node.name);
visit(node.typeParameters);
visit(node.parameters);
token(node.question);
_endFormalParameter(node);
Expand Down Expand Up @@ -2801,6 +2802,7 @@ class SourceVisitor extends ThrowingAstVisitor {
token(node.superKeyword);
token(node.period);
token(node.name);
visit(node.typeParameters);
visit(node.parameters);
token(node.question);
_endFormalParameter(node);
Expand Down
38 changes: 38 additions & 0 deletions test/short/regression/1300/1321.unit
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
>>> `super.` parameter.
class A {
A(int foo<T>(int a));
}
class B extends A {
B.sub1(int super.bar1<T1>(int a1),);
B.sub2(int super.bar2<T2>(int a2),);
}
main() {}
<<<
class A {
A(int foo<T>(int a));
}

class B extends A {
B.sub1(
int super.bar1<T1>(int a1),
);
B.sub2(
int super.bar2<T2>(int a2),
);
}

main() {}
>>> `this.` parameter.
class A {
A.sub1(int this.bar1<T1>(int a1),);
A.sub2(int this.bar2<T2>(int a2),);
}
<<<
class A {
A.sub1(
int this.bar1<T1>(int a1),
);
A.sub2(
int this.bar2<T2>(int a2),
);
}
30 changes: 30 additions & 0 deletions test/tall/regression/1300/1321.unit
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
>>> `super.` parameter.
class A {
A(int foo<T>(int a));
}
class B extends A {
B.sub1(int super.bar1<T1>(int a1),);
B.sub2(int super.bar2<T2>(int a2),);
}
main() {}
<<<
class A {
A(int foo<T>(int a));
}

class B extends A {
B.sub1(int super.bar1<T1>(int a1));
B.sub2(int super.bar2<T2>(int a2));
}

main() {}
>>> `this.` parameter.
class A {
A.sub1(int this.bar1<T1>(int a1),);
A.sub2(int this.bar2<T2>(int a2),);
}
<<<
class A {
A.sub1(int this.bar1<T1>(int a1));
A.sub2(int this.bar2<T2>(int a2));
}

0 comments on commit 393d0a4

Please sign in to comment.