Skip to content

Compilation error on higher-order functions #827

@orenbenkiki

Description

@orenbenkiki

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions