E1042

E1042#

Invalid attribute.

如果程序中包含 MoonBit 不支持的属性标注,或者属性标注的参数数量、类型不正确,编译器就会产生这一警告。

错误示例#

// 未知的属性
#unrecognized
fn f() -> Unit {}

// `#deprecated` 最多接受一个字符串作为参数
#deprecated("multiple", "message")
fn g() -> Unit {}

建议#

检查属性标注中是否有拼写错误,并检查该属性的文档以确认它接受哪些参数。如果想要写一个供外部工具使用的属性标注,确保属性的名字形如 #xxx.yyy,例如 #coverage.skip,这样 MoonBit 就会把该属性视作外部属性并无视它。