# XO0430: misspelled constant pattern

A bare name in a pattern that is a `const` matches by equality. A name that is not a constant would bind a new variable that matches everything, so a name spelled like a constant (upper case, digits and underscores) that resolves to nothing is an error: the usual cause is a typo in the constant's name. See core 3.5.

## Example

```xo
const OK = 200

fn f(s: Int) -> Bool {
  match s {
    OKK => true
    _ => false
  }
}
```

## Fix

```xo
const OK = 200

fn f(s: Int) -> Bool {
  match s {
    OK => true
    _ => false
  }
}
```

Run `xo explain XO0430` for this text in a terminal, or see
[section 10.6 of the specification](../../spec/core/#106-diagnostic-codes).

