Skip to content

Remove bump_invisible() where possible #219

@c42f

Description

@c42f

Looking at the use of bump_invisible(), it's used for some useful things:

  • Emitting errors when expected syntax isn't present
  • Emitting empty tokens
    • var""
    • preparing triple string trivia (avoiding backtracking)

And some dubious things

Premature lowering (see also #88)

  • juxtuposition lowering to call in the parser
  • return becoming return nothing implicitly
  • lowering core macro calls early
    • core_@doc
    • core_@cmd
  • empty strings have one chunk

Dealing with the fact that Expr heads don't have flags

We should probably remove the dubious usages.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions