警告编号
你可以在构建配置 中或
使用 @@warning() 装饰器 配置 ReScript 编译器生成的警告。
| # | Description | 
|---|---|
| 1 | 看起来很可疑的注释开启标记。 | 
| 2 | 看起来很可疑的注释结尾标记。 | 
| 3 | 已被废弃的特性 | 
| 4 | 脆弱的模式匹配:即使在匹配的某个变体类型上增加了额外的构造函数,匹配仍然完整。 | 
| 5 | 部分应用的函数:表达式的类型为函数且被忽略了。 | 
| 6 | 函数调用时省略忽略了标签 | 
| 8 | 部分匹配:部分模式未被匹配到 | 
| 9 | 记录模式中有未被匹配到的字段 | 
| 10 | 序列左侧的表达式的类型不为"unit"(也不为函数,请看5号警告) | 
| 11 | 模式匹配中有冗余的分支(不会被用到的分支) | 
| 12 | 模式匹配中有冗余的子模式 | 
| 14 | 字符串常量中有非法的转义字符 | 
| 16 | 不可擦除的可选参数。 | 
| 20 | 未被使用的函数参数 | 
| 21 | 不会返回的语句 | 
| 23 | 记录存在没有用到的“with”。 | 
| 24 | 不良的模块名:源代码的文件名不是有效的 ReScript 模块名。 | 
| 26 | 可疑的未使用变量:未使用的变量,与 "let" 或 "as" 绑定,并且不以下划线 ("_") 字符开头。 | 
| 27 | 无害的未使用变量:未与 "let" 或 "as" 绑定的未使用变量,并且不以下划线 ("_") 字符开头。 | 
| 28 | 通配符模式作为常量构造函数的参数给出。 | 
| 29 | 字符串常量中未转义的换行符(不可移植代码)。 | 
| 30 | 在两个相互递归的类型中定义了两个同名的标签或构造函数。 | 
| 32 | 未被使用的值声明。 | 
| 33 | 未被使用的 open 语句。 | 
| 34 | 未被使用的类型声明。 | 
| 35 | 未被使用的 for 循环下标 | 
| 36 | Unused ancestor variable. | 
| 37 | 未被使用的构造器。 | 
| 38 | 未被使用的扩展构造器 | 
| 39 | 未被使用的 rec 标记 | 
| 43 | 非可选标签作为可选标签应用。 | 
| 44 | Open 语句了隐藏已定义的标识符。 | 
| 45 | Open 语句隐藏已定义的标签或构造函数。 | 
| 46 | 环境变量错误。 | 
| 47 | 非法属性装载(payload)。 | 
| 48 | 可选参数被隐式消除。 | 
| 49 | 查找模块别名时缺少 cmi 文件。 | 
| 50 | Unexpected documentation comment. | 
| 52 | 脆弱的常量模式。 | 
| 53 | 属性不能出现在当前上下文中 | 
| 54 | 属性被使用了多于一次 | 
| 56 | 不可达的模式分支 (基于类型信息得出的结论)。 | 
| 57 | 在使用模式守卫(guard)的情况下使用了有歧义的 "or" 模式 | 
| 59 | 对不可变的值进行赋值 | 
| 60 | 未使用的模块声明 | 
| 61 | 不可拆箱的基本类型 | 
| 62 | 通用代数数据类型(GADT)存在类型约束 | 
| 101 | 未被使用的 "bs" 属性 | 
| 102 | 使用了多态比较(可能不安全) | 
| 103 | 脆弱的 FFI 定义 | 
| 104 | bs.deriving 的自定义警告信息 | 
| 105 | external 的名称是从 val 中推断出来的,该名称在更改值名称时对重构是不安全的 | 
| 106 | 使用了未实现的基本类型 | 
| 107 | 整数字面值超出了类型 int 可表达的范围 | 
| 108 | 未解释的分隔符(用于 unicode) | 
| 109 | 顶层表达式的类型为 unit |