You are currently looking at the v11.0 docs, which are still a work in progress. If you miss anything, you may find it in the older v10.0 docs here.
Warning Numbers
You can configure which warnings the ReScript compiler generates
in the build configuration or
using the @warning()
or the @@warning()
decorator.
# | Description |
---|---|
a | All flags |
1 | Suspicious-looking start-of-comment mark. |
2 | Suspicious-looking end-of-comment mark. |
3 | Deprecated feature. |
4 | Fragile pattern matching: matching that will remain complete even if additional constructors are added to one of the variant types matched. |
5 | Partially applied function: expression whose result has function type and is ignored. |
6 | Label omitted in function application. |
8 | Partial match: missing cases in pattern-matching. |
9 | Missing fields in a record pattern. |
10 | Expression on the left-hand side of a sequence that doesn't have type "unit" (and that is not a function, see warning number 5). |
11 | Redundant case in a pattern matching (unused match case). |
12 | Redundant sub-pattern in a pattern-matching. |
14 | Illegal backslash escape in a string constant. |
16 | Unerasable optional argument. |
20 | Unused function argument. |
21 | Non-returning statement. |
23 | Useless record "with" clause. |
24 | Bad module name: the source file name is not a valid ReScript module name. |
26 | Suspicious unused variable: unused variable that is bound with "let" or "as", and doesn't start with an underscore ("_") character. |
27 | Innocuous unused variable: unused variable that is not bound with "let" nor "as", and doesn't start with an underscore ("_") character. |
28 | Wildcard pattern given as argument to a constant constructor. |
29 | Unescaped end-of-line in a string constant (non-portable code). |
30 | Two labels or constructors of the same name are defined in two mutually recursive types. |
32 | Unused value declaration. |
33 | Unused open statement. |
34 | Unused type declaration. |
35 | Unused for-loop index. |
36 | Unused ancestor variable. |
37 | Unused constructor. |
38 | Unused extension constructor. |
39 | Unused rec flag. |
43 | Nonoptional label applied as optional. |
44 | Open statement shadows an already defined identifier. |
45 | Open statement shadows an already defined label or constructor. |
46 | Error in environment variable. |
47 | Illegal attribute payload. |
48 | Implicit elimination of optional arguments. |
49 | Absent cmi file when looking up module alias. |
50 | Unexpected documentation comment. |
52 | Fragile constant pattern. |
53 | Attribute cannot appear in this context |
54 | Attribute used more than once on an expression |
56 | Unreachable case in a pattern-matching (based on type information). |
57 | Ambiguous or-pattern variables under guard |
59 | Assignment to non-mutable value |
60 | Unused module declaration |
61 | Unboxable type in primitive declaration |
62 | Type constraint on GADT type declaration |
101 | Unused bs attributes |
102 | Polymorphic comparison introduced (maybe unsafe) |
103 | Fragile FFI definitions |
104 | bs.deriving warning with customized message |
105 | External name is inferred from val name is unsafe from refactoring when changing value name |
106 | Unimplemented primitive used: |
107 | Integer literal exceeds the range of representable integers of type int |
108 | Uninterpreted delimiters (for unicode) |
109 | Toplevel expression has unit type |