Skip to content

Main function in LLVM should either take argv/argc arguments or not exist at all #9

Description

@sampsyo

Currently, the main function in generated LLVM programs takes no "normal" arguments and an environment structure pointer. However, the main function for executable programs should instead take the traditional C argc/argv arguments so it can be invoked. (As an additional optimization, we could even imagine disabling the environment pointer argument completely when a function has no free variables—and main is guaranteed to be closed.)

On the other hand, when we just want to link the generated code into a larger program, perhaps it would be nice to have an option to disable the main function altogether.

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