Dart编辑器关于最终字段的错误报告不一致

Dart编辑器关于最终字段的错误报告不一致,dart,dart-editor,Dart,Dart Editor,给定以下类,Dart编辑器(build 5549)会给我一些相互矛盾的反馈(根据构造函数主体中的注释): 类示例{ 最后的国际粮食组织; 示例(): foo=0 { foo=1;//'无法为最终变量“foo”赋值' this.foo=2;//确定 } } 更令人困惑的是,它将很高兴为这两行生成等效的(工作)javascript。方法的情况似乎与构造函数的情况相同;这尤其使我相信,在这两种情况下都是不允许的 建议使用公共final字段,而不是带有公共getter的私有字段。理论上我喜欢这样,但非

给定以下类,Dart编辑器(build 5549)会给我一些相互矛盾的反馈(根据构造函数主体中的注释):

类示例{
最后的国际粮食组织;
示例():
foo=0
{
foo=1;//'无法为最终变量“foo”赋值'
this.foo=2;//确定
}
}
更令人困惑的是,它将很高兴为这两行生成等效的(工作)javascript。方法的情况似乎与构造函数的情况相同;这尤其使我相信,在这两种情况下都是不允许的

建议使用公共final字段,而不是带有公共getter的私有字段。理论上我喜欢这样,但非平凡的成员构造不能真正进入初始值设定项列表


我是否缺少将前者报告为错误而将后者报告为错误的正当理由?或者我现在应该提交一个bug吗?

如果在Dart VM中运行以下操作,这肯定是JavaScript生成器中的bug:

main(){
新例子();
}
课例{
最后的国际粮食组织;
示例():foo=0{
foo=1;//这在dart虚拟机中失败
this.foo=2;//这在dart vm中也会失败
}
}

然后它拒绝执行行foo=1this.foo=2。这与规范一致,规范要求(如果我读得正确的话)构造函数主体中的final字段为final。

如果在Dart VM中运行以下命令,这肯定是JavaScript生成器中的错误:

main(){
新例子();
}
课例{
最后的国际粮食组织;
示例():foo=0{
foo=1;//这在dart虚拟机中失败
this.foo=2;//这在dart vm中也会失败
}
}

然后它拒绝执行行foo=1this.foo=2。这与规范一致,规范要求(如果我读得正确的话)构造函数主体中的final字段为final。

谢谢。我希望我能很快在Windows上运行Dartium。我继续写了一个bug:@Neverender我相信Dartium现在应该在windows上运行了,谢谢。我希望我能很快在Windows上运行Dartium。我继续写了一个bug:@Neverender我认为Dartium现在应该在windows上运行了