Skip to content

[augmentations] No error in the analyzer when the resulting constructor is not valid #57029

@sgrekhov

Description

@sgrekhov

The code below has no expected error in the analyzer

class C {
  int x;
  C(this.x);
  C.foo(): this(0);
//^^^^^
// [analyzer] unspecified
// [cfe] unspecified
}

augment class C {
  augment C.foo(): x = 1;
}

main() {
  print(C);
}

The resulting constructor here is a redirecting constructor with a field initializer. It is a compile-time error.

Dart SDK version: 3.7.0-86.0.dev (dev) (Wed Oct 30 17:03:22 2024 -0700) on "windows_x64"

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2A bug or feature request we're likely to work onarea-dart-modelFor issues related to conformance to the language spec in the parser, compilers or the CLI analyzer.feature-augmentationsImplementation of the augmentations feature

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions