Skip to content

Use extern type definitions in LLVM #1378

Description

@marzipankaiser

After #1372 extern types (and extern interfaces) can have right-hand sides.

We should use this in the llvm backend to allow something like

extern type Int64 =
  llvm "i64, 64, no eraser, no sharer"

For this, we need a way to specify all the necessary parts (type, size, eraser, sharer, ...), there are mostly two options:

  1. have special syntax in the extern string (like above)
  2. have syntax parsed in the Effekt parser (e.g. allow multiple extern strings / tuples / ...)

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