method({int a = 42, required int b, required final int c}) {}

class Class {
  method(
      {int a = 42,
      required int b,
      required final int c,
      required covariant final int d}) {}
}

typedef Typedef1 = Function({int a, required int b});
typedef Typedef2({int a, required int b});
Function({int a, required int b}) field = ({int a = 42, required int b}) {};

abstract class A {
  foo({int x});
}

class B extends A {
  foo({x}) {}
}

class C extends A {
  foo({x = 42}) {}
}

ok() {}
error() {}
main() {}
