compiler: fn ptrs should hit different lints based on ABI by workingjubilee · Pull Request #142271 · rust-lang/rust (original) (raw)

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Conversation6 Commits3 Checks9 Files changed

Conversation

This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode characters

[ Show hidden characters]({{ revealButtonHref }})

@workingjubilee

I was looking closer at the code for linting on ABIs and realized a mistake was probably made during rebase or review. I think that for function pointers in the HIR, the lint that fires should probably depend on the ABI we encountered, e.g. if it's on the newly-deprecated set of ABIs or not. This will be slightly confusing for a little bit, but I think we can do more to reduce that confusion by switching unsupported_fn_ptr_calling_conventions to a hard error.

r? @RalfJung

@workingjubilee

@workingjubilee

@rustbot rustbot added S-waiting-on-review

Status: Awaiting review from the assignee but also interested parties.

T-compiler

Relevant to the compiler team, which will review and decide on the PR/issue.

labels

Jun 9, 2025

@workingjubilee workingjubilee changed the titlecompiler: fn ptrs should hint different lints based on ABI compiler: fn ptrs should hit different lints based on ABI

Jun 9, 2025

@RalfJung

From my side this was deliberate: UNSUPPORTED_FN_PTR_CALLING_CONVENTIONS now also triggers for these newly deprecated calling conventions. I didn't think it'd be worth it to think much about triggering one lint vs the other here.

RalfJung

@RalfJung

Ah, is this in preparation for #142134, i.e. to make UNSUPPORTED_FN_PTR_CALLING_CONVENTIONS a hard error Soon (TM)? In that case, yeah this LGTM. r=me with comment nit fixed.

@workingjubilee

@workingjubilee @RalfJung

Co-authored-by: Ralf Jung post@ralfj.de

@workingjubilee

@bors

📌 Commit 8808a9c has been approved by RalfJung

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors

Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

and removed S-waiting-on-review

Status: Awaiting review from the assignee but also interested parties.

labels

Jun 10, 2025

fmease added a commit to fmease/rust that referenced this pull request

Jun 10, 2025

@fmease

…fferent-lints, r=RalfJung

compiler: fn ptrs should hit different lints based on ABI

I was looking closer at the code for linting on ABIs and realized a mistake was probably made during rebase or review. I think that for function pointers in the HIR, the lint that fires should probably depend on the ABI we encountered, e.g. if it's on the newly-deprecated set of ABIs or not. This will be slightly confusing for a little bit, but I think we can do more to reduce that confusion by switching unsupported_fn_ptr_calling_conventions to a hard error.

r? @RalfJung

bors added a commit that referenced this pull request

Jun 10, 2025

@bors

Rollup of 14 pull requests

Successful merges:

r? @ghost @rustbot modify labels: rollup

bors added a commit that referenced this pull request

Jun 10, 2025

@bors

Rollup of 16 pull requests

Successful merges:

r? @ghost @rustbot modify labels: rollup

rust-timer added a commit that referenced this pull request

Jun 10, 2025

@rust-timer

Rollup merge of #142271 - workingjubilee:fn-ptrs-have-two-different-lints, r=RalfJung

compiler: fn ptrs should hit different lints based on ABI

I was looking closer at the code for linting on ABIs and realized a mistake was probably made during rebase or review. I think that for function pointers in the HIR, the lint that fires should probably depend on the ABI we encountered, e.g. if it's on the newly-deprecated set of ABIs or not. This will be slightly confusing for a little bit, but I think we can do more to reduce that confusion by switching unsupported_fn_ptr_calling_conventions to a hard error.

r? @RalfJung

tgross35 pushed a commit to tgross35/compiler-builtins that referenced this pull request

Jun 14, 2025

@bors

Labels

S-waiting-on-bors

Status: Waiting on bors to run and complete tests. Bors will change the label on completion.

T-compiler

Relevant to the compiler team, which will review and decide on the PR/issue.