# XO0429: invalid valued enum

An enum may declare a value type, `Int` or `Str`, as `enum Level: Str { Debug = "debug" }`. Every variant is then field-less, the enum takes no type parameters, and each value is a constant of the value type. A value on an enum that names no value type is this error too: write `enum E: Int` or `: Str`. See core 2.3.

## Example

```xo
enum Level: Float { Low }
```

## Fix

```xo
enum Level: Int { Low }
```

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

