Docs menu

E015: E015 is retired -- Turf now gives a more specific code

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

Older versions of Turf used this one code for every “the shape of this code isn’t right” mistake: a missing punctuation mark, a bracket that is never closed, a name or type that is missing. Nothing produces E015 any more. If you are reading an old log, or an old tutorial, that is why you found it.

Each of those mistakes now has its own code, and its own explanation, so you are told which shape is wrong:

Example
E099  a string or character literal was never closedE100  an escape sequence Turf doesn't know (like `\q`)E101  a character literal that isn't exactly one characterE102  a missing semicolon `;`E103  something that doesn't belong at this spotE104  a bracket, brace or parenthesis that is never closedE105  a missing commaE106  a missing colonE107  a missing opening `{` or `(`E108  a name was expected (a variable, function, field, ...)E109  a type was expectedE110  a specific word or symbol was expected (`in`, `while`, `->`, ...)E111  code nested too deeplyE112  `void` used as the type of a variable, field or parameterE113  syntax that used to exist and has been replacedE114  the same name declared twice inside a struct, enum, error or machineE115  an operator declared with the wrong number of operandsE116  an `extern` function written with a bodyE117  an `error` declaration that mixes the `;` and `{ }` formsE118  a statement outside any functionE119  no `main` functionE120  a `for` loop form that isn't supportedE123  an array size that isn't a positive whole number

Run turf --explain with the code your error shows.

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

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

Esc

Type to search.