Skip to content

Compile error instead of falling back to C for unsupported calling conventions #6536

@tadeokondrak

Description

@tadeokondrak

Putting a calling convention unsupported for the target is allowed, and silently changed to the C calling convention (get_llvm_cc in stage1).

I'm not sure why this is the behaviour. It seems like an ABI footgun, and it's easily worked around when actually intended.
Clang seems to ignore unsupported calling convention annotations, but emits a warning by default.

Metadata

Metadata

Assignees

No one assigned

    Labels

    acceptedThis proposal is planned.proposalThis issue suggests language modifications. If it also has the "accepted" label then it is planned.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions