Compiling the following fails: ``` defmodule Foo do @spec foo((() -> [ integer ])) :: integer def foo(_x) do 1 end end ``` With the error: ``` ** (CompileError) foo.exs: type '__block__'(_) undefined ``` This seems to be triggered by the list, that is, compiling the following works: ``` defmodule Foo do @spec foo((() -> integer)) :: integer def foo(_x) do 1 end end ```