Skip to content

No error if library exports declaration 'main' which is not a function #43549

@sgrekhov

Description

@sgrekhov

According to the recent update of the NNBD specification

Let L be a library that exports a declaration D named main. It is a compile-time error unless D is a function declaration.

But, in fact, there are no errors nor in analyzer nor in CFE in all of the cases below

void getVoid() {}
void main = getVoid();
int get main => 42;
class main {}
typedef void main(List<String> args);
class C {
}
mixin main on C {}

Dart SDK version: 2.10.0-110.0.dev (dev) (Wed Sep 9 17:51:43 2020 -0700) on "windows_x64"

Metadata

Metadata

Assignees

No one assigned

    Labels

    EpicNNBDIssues related to NNBD Releasearea-metaCross-cutting, high-level issues (for tracking many other implementation issues, ...).

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions