@a
@A(1)
library test;

class A {
  const A(int value);
}

@a
@A(2)
class C {}

const Object a = const Object();
@a
@A(3)
int? f1, f2;
@a
@A(3)
typedef F2 = void Function();
@a
@A(2)
typedef void F1();
@a
@A(4)
void main() {}
