Docs menu

E117: An error declaration mixes two forms

What compiler error E117 means, and how to fix it.

An error type can be written in two ways, and a declaration has to pick one.

A bare error, with no variants – it ends with a semicolon:

Example
error NotFound;

An error with named variants – it uses braces and no semicolon in front of them:

Example
error IOError { NotFound, PermissionDenied, Closed }

Writing the bare ; form and then also a { ... } variant list right after it is ambiguous – is the type finished, or isn’t it? – so Turf rejects it:

Example
error NotFound; { Missing }

Keep whichever you meant and delete the other.

Run turf --explain E117 in a terminal to read this again.

Last updated: Oct 15, 2026Edit this page on GitHub

Esc

Type to search.