> For the complete documentation index, see [llms.txt](https://docs.sannybuilder.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.sannybuilder.com/troubleshooting/errors/0125.md).

# 0125: Unexpected return type in function

Compiler found a function's [return type](/language/functions.md#return-from-function) that wasn't expected in this position.

Function's return type is a combination of words `optional`, `logical`, primitive types such as `Int`, or `Float`, and class names.

`logical` type can't be mixes with other types:

```pascal
function foo: logical, int // Error: unexpected return type int in function foo.
```

`optional` modifier must precede the return type:

```pascal
function foo: int, optional // Error: unexpected return type int in function foo.
```

You can't return types that are not known to the compiler:

```pascal
function foo: unknown // Error: Unexpected return type unknown in function foo.
```

#### Possible solutions:

* check your function definition and provide correct order of return types.
