E4191#
Compiler diagnostic name: mbt_check_non_test_toplevel.
mbt check 文档块中存在非测试顶层声明。
文档注释中标记为 mbt check 的代码围栏会被视为文档测试块。这些代码块应该包含测试顶层声明,例如 test { ... }。普通顶层声明会被跳过,并报告此诊断。
错误示例#
下面的 mbt check 块声明了一个普通辅助函数:
/// Returns the answer.
///
/// ```mbt check
/// fn helper() -> Int {
/// 42
/// }
/// ```
pub fn answer() -> Int {
42
}
MoonBit 会报告一个错误。
建议#
将需要检查的代码移动到 test { ... } 块中:
/// Returns the answer.
///
/// ```mbt check
/// test {
/// inspect(answer(), content="42")
/// }
/// ```
pub fn answer() -> Int {
42
}