error: nested array expressions are not allowed
  --> testdata/options/values/bool.proto:26:31
   |
26 |     x: [1, 1.0, inf, nan, {}, [], 0 to 1]
   |        -----------------------^^--------- ...within this array expression
   |                               |
   |                               cannot nest this array expression...

error: unexpected range expression in option setting value
  --> testdata/options/values/bool.proto:26:35
   |
26 |     x: [1, 1.0, inf, nan, {}, [], 0 to 1]
   |                                   ^^^^^^

warning: non-canonical `bool` literal
  --> testdata/options/values/bool.proto:11:8
   |
11 |     x: True
   |        ^^^^
  help: replace with `true`
   |
11 | -     x: True
11 | +     x: true
   |
   = note: within message expressions only, `True` is permitted as a `bool`, but
           should be avoided

warning: non-canonical `bool` literal
  --> testdata/options/values/bool.proto:12:8
   |
12 |     x: False
   |        ^^^^^
  help: replace with `false`
   |
12 | -     x: False
12 | +     x: false
   |
   = note: within message expressions only, `False` is permitted as a `bool`,
           but should be avoided

warning: non-canonical `bool` literal
  --> testdata/options/values/bool.proto:13:8
   |
13 |     x: t
   |        ^
  help: replace with `true`
   |
13 | -     x: t
13 | +     x: true
   |
   = note: within message expressions only, `t` is permitted as a `bool`, but
           should be avoided

warning: non-canonical `bool` literal
  --> testdata/options/values/bool.proto:14:8
   |
14 |     x: f
   |        ^
  help: replace with `false`
   |
14 | -     x: f
14 | +     x: false
   |
   = note: within message expressions only, `f` is permitted as a `bool`, but
           should be avoided

error: cannot find `TRUE` in this scope
  --> testdata/options/values/bool.proto:17:8
   |
17 |     x: TRUE
   |        ^^^^ not found in this scope
   |
   = help: the full name of this scope is `buf.test`

error: cannot find `FALSE` in this scope
  --> testdata/options/values/bool.proto:18:8
   |
18 |     x: FALSE
   |        ^^^^^ not found in this scope
   |
   = help: the full name of this scope is `buf.test`

error: cannot find `T` in this scope
  --> testdata/options/values/bool.proto:19:8
   |
19 |     x: T
   |        ^ not found in this scope
   |
   = help: the full name of this scope is `buf.test`

error: cannot find `F` in this scope
  --> testdata/options/values/bool.proto:20:8
   |
20 |     x: F
   |        ^ not found in this scope
   |
   = help: the full name of this scope is `buf.test`

error: mismatched types
  --> testdata/options/values/bool.proto:22:9
   |
22 |     x: -true
   |        -^^^^ expected number, found `bool`
   |        |
   |        expected due to this
   |
   = note: expected: number
              found: scalar type `bool`

error: mismatched types
  --> testdata/options/values/bool.proto:23:9
   |
23 |     x: -True
   |        -^^^^ expected number, found `bool`
   |        |
   |        expected due to this
   |
   = note: expected: number
              found: scalar type `bool`

warning: non-canonical `bool` literal
  --> testdata/options/values/bool.proto:23:9
   |
23 |     x: -True
   |         ^^^^
  help: replace with `true`
   |
23 | -     x: -True
23 | +     x: -true
   |
   = note: within message expressions only, `True` is permitted as a `bool`, but
           should be avoided

error: mismatched types
  --> testdata/options/values/bool.proto:26:9
   |
26 |     x: [1, 1.0, inf, nan, {}, [], 0 to 1]
   |         ^ expected `bool`, found integer literal
...
38 |     repeated bool x = 1;
   |     ------------- expected due to this
   |
   = note: expected: scalar type `bool`
              found: integer literal

error: mismatched types
  --> testdata/options/values/bool.proto:26:12
   |
26 |     x: [1, 1.0, inf, nan, {}, [], 0 to 1]
   |            ^^^ expected `bool`, found floating-point literal
...
38 |     repeated bool x = 1;
   |     ------------- expected due to this
   |
   = note: expected: scalar type `bool`
              found: floating-point literal

error: mismatched types
  --> testdata/options/values/bool.proto:26:17
   |
26 |     x: [1, 1.0, inf, nan, {}, [], 0 to 1]
   |                 ^^^ expected `bool`, found floating-point literal
...
38 |     repeated bool x = 1;
   |     ------------- expected due to this
   |
   = note: expected: scalar type `bool`
              found: floating-point literal

error: mismatched types
  --> testdata/options/values/bool.proto:26:22
   |
26 |     x: [1, 1.0, inf, nan, {}, [], 0 to 1]
   |                      ^^^ expected `bool`, found floating-point literal
...
38 |     repeated bool x = 1;
   |     ------------- expected due to this
   |
   = note: expected: scalar type `bool`
              found: floating-point literal

error: mismatched types
  --> testdata/options/values/bool.proto:26:27
   |
26 |     x: [1, 1.0, inf, nan, {}, [], 0 to 1]
   |                           ^^ expected `bool`, found message expression
...
38 |     repeated bool x = 1;
   |     ------------- expected due to this
   |
   = note: expected: scalar type `bool`
              found: message expression

error: non-canonical `bool` literal outside of message expression
  --> testdata/options/values/bool.proto:32:14
   |
32 | option (y) = True;
   |              ^^^^
  help: replace with `true`
   |
32 | - option (y) = True;
32 | + option (y) = true;
   |
   = note: within message expressions only, `True` is permitted as a `bool`, but
           should be avoided

error: non-canonical `bool` literal outside of message expression
  --> testdata/options/values/bool.proto:33:14
   |
33 | option (y) = False;
   |              ^^^^^
  help: replace with `false`
   |
33 | - option (y) = False;
33 | + option (y) = false;
   |
   = note: within message expressions only, `False` is permitted as a `bool`,
           but should be avoided

error: non-canonical `bool` literal outside of message expression
  --> testdata/options/values/bool.proto:34:14
   |
34 | option (y) = t;
   |              ^
  help: replace with `true`
   |
34 | - option (y) = t;
34 | + option (y) = true;
   |
   = note: within message expressions only, `t` is permitted as a `bool`, but
           should be avoided

error: non-canonical `bool` literal outside of message expression
  --> testdata/options/values/bool.proto:35:14
   |
35 | option (y) = f;
   |              ^
  help: replace with `false`
   |
35 | - option (y) = f;
35 | + option (y) = false;
   |
   = note: within message expressions only, `f` is permitted as a `bool`, but
           should be avoided

encountered 17 errors and 5 warnings
