Skip to content

inclarity in threaded lexer docs leads to confusing failure #227

Open
@xplat

Description

@xplat

https://www.haskell.org/happy/doc/html/sec-monads.html#sec-lexers states that

is the name of the lexical analyser function, and is a token that is to be treated as the end of file.

I had created a token named 'eof' under %token and set to eof. This seemed to work, but when I finished the rest of the grammar to a compiling state, it would immediately fail at the first token. This is because eof was taken as a variable pattern that matched everything, so everything was considered an end of file. The documentation could stand to be louder that this is a Haskell pattern matching the token type, and not the name of a token.

Cc: @cartazio

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