Skip to content

fix improper ctypes in Znext solver#156399

Merged
rust-bors[bot] merged 4 commits into
rust-lang:mainfrom
rajgandhi1:unexpected_type_fix
Jun 10, 2026
Merged

fix improper ctypes in Znext solver#156399
rust-bors[bot] merged 4 commits into
rust-lang:mainfrom
rajgandhi1:unexpected_type_fix

Conversation

@rajgandhi1

@rajgandhi1 rajgandhi1 commented May 10, 2026

Copy link
Copy Markdown
Contributor

@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 May 10, 2026
@rustbot

rustbot commented May 10, 2026

Copy link
Copy Markdown
Collaborator

r? @JohnTitor

rustbot has assigned @JohnTitor.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: compiler
  • compiler expanded to 73 candidates
  • Random selection from 18 candidates

@Kivooeo

Kivooeo commented May 10, 2026

Copy link
Copy Markdown
Member

cc @lcnr

@JohnTitor

Copy link
Copy Markdown
Member

r? lcnr

@rustbot rustbot assigned lcnr and unassigned JohnTitor May 13, 2026
Comment thread compiler/rustc_lint/src/types/improper_ctypes.rs Outdated
@jdonszelmann jdonszelmann self-assigned this Jun 5, 2026
@rajgandhi1 rajgandhi1 force-pushed the unexpected_type_fix branch from a871502 to 9140c6c Compare June 5, 2026 10:11
@rustbot

rustbot commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed.

Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers.

@rajgandhi1 rajgandhi1 requested a review from jdonszelmann June 6, 2026 16:33
Comment thread compiler/rustc_lint/src/types/improper_ctypes.rs Outdated
Comment thread compiler/rustc_lint/src/types/improper_ctypes.rs
help: None,
},

// Reachable when the new solver reveals a body's defining opaque.

@jdonszelmann jdonszelmann Jun 8, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same as above. should I add comments to highlight this?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes please

@jdonszelmann

Copy link
Copy Markdown
Contributor

@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 8, 2026
@rustbot

rustbot commented Jun 8, 2026

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@rajgandhi1 rajgandhi1 requested a review from jdonszelmann June 8, 2026 10:07
@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jun 8, 2026
@rajgandhi1

Copy link
Copy Markdown
Contributor Author

@rustbot ready

@jdonszelmann

Copy link
Copy Markdown
Contributor

@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 8, 2026
@rust-bors rust-bors Bot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Jun 9, 2026
jhpratt added a commit to jhpratt/rust that referenced this pull request Jun 9, 2026
…jdonszelmann

fix improper ctypes in Znext solver

Fixes rust-lang#156352.
rust-bors Bot pushed a commit that referenced this pull request Jun 9, 2026
Rollup of 3 pull requests

Successful merges:

 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #156399 (fix improper ctypes in Znext solver)
 - #157605 (Arg splat experiment - syntax impl)
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jun 9, 2026
…jdonszelmann

fix improper ctypes in Znext solver

Fixes rust-lang#156352.
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jun 9, 2026
…jdonszelmann

fix improper ctypes in Znext solver

Fixes rust-lang#156352.
rust-bors Bot pushed a commit that referenced this pull request Jun 9, 2026
Rollup of 10 pull requests

Successful merges:

 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
GuillaumeGomez added a commit to GuillaumeGomez/rust that referenced this pull request Jun 9, 2026
…jdonszelmann

fix improper ctypes in Znext solver

Fixes rust-lang#156352.
jhpratt added a commit to jhpratt/rust that referenced this pull request Jun 9, 2026
…jdonszelmann

fix improper ctypes in Znext solver

Fixes rust-lang#156352.
rust-bors Bot pushed a commit that referenced this pull request Jun 9, 2026
Rollup of 18 pull requests

Successful merges:

 - #152852 (Remove driver_lint_caps)
 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
rust-bors Bot pushed a commit that referenced this pull request Jun 9, 2026
Rollup of 17 pull requests

Successful merges:

 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
rust-bors Bot pushed a commit that referenced this pull request Jun 10, 2026
Rollup of 17 pull requests

Successful merges:

 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
rust-bors Bot pushed a commit that referenced this pull request Jun 10, 2026
Rollup of 17 pull requests

Successful merges:

 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
rust-bors Bot pushed a commit that referenced this pull request Jun 10, 2026
Rollup of 17 pull requests

Successful merges:

 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
rust-bors Bot pushed a commit that referenced this pull request Jun 10, 2026
Rollup of 17 pull requests

Successful merges:

 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
rust-bors Bot pushed a commit that referenced this pull request Jun 10, 2026
Rollup of 17 pull requests



Successful merges:

 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
rust-bors Bot pushed a commit that referenced this pull request Jun 10, 2026
Rollup of 17 pull requests



Successful merges:

 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
rust-bors Bot pushed a commit that referenced this pull request Jun 10, 2026
Rollup of 17 pull requests



Successful merges:

 - #157166 (Change type of async context parameter after state transform.)
 - #157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - #157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - #157571 (Remove ProcMacro enum from proc macro ABI)
 - #148183 (rustdoc: Test & document `test_harness` code block attribute)
 - #153847 (Fix marker trait winnowing depending on impl order)
 - #156067 (Fix async drop glue for Box<T>)
 - #156399 (fix improper ctypes in Znext solver)
 - #157338 (Make `Literal::byte_character_value` work with bytes as well)
 - #157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - #157605 (Arg splat experiment - syntax impl)
 - #157630 (Add multibyte JSON diagnostic regression test)
 - #157633 (Reorder `impl` restriction rendering and add bottom margin)
 - #157642 (Report duplicate relaxed bounds during ast lowering)
 - #157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - #157661 (Update to ar_archive_writer v0.5.2)
 - #157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - #157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
@rust-bors rust-bors Bot merged commit cfbbb01 into rust-lang:main Jun 10, 2026
12 checks passed
@rustbot rustbot added this to the 1.98.0 milestone Jun 10, 2026
rust-timer added a commit that referenced this pull request Jun 10, 2026
Rollup merge of #156399 - rajgandhi1:unexpected_type_fix, r=jdonszelmann

fix improper ctypes in Znext solver

Fixes #156352.
pull Bot pushed a commit to Kokoro2336/rust-analyzer that referenced this pull request Jun 11, 2026
Rollup of 17 pull requests



Successful merges:

 - rust-lang/rust#157166 (Change type of async context parameter after state transform.)
 - rust-lang/rust#157335 (bootstrap: Handle dotted table keys when parsing bootstrap.toml)
 - rust-lang/rust#157503 (Disable `tests/debuginfo/pretty-std.rs` `OsString` cdb check)
 - rust-lang/rust#157571 (Remove ProcMacro enum from proc macro ABI)
 - rust-lang/rust#148183 (rustdoc: Test & document `test_harness` code block attribute)
 - rust-lang/rust#153847 (Fix marker trait winnowing depending on impl order)
 - rust-lang/rust#156067 (Fix async drop glue for Box<T>)
 - rust-lang/rust#156399 (fix improper ctypes in Znext solver)
 - rust-lang/rust#157338 (Make `Literal::byte_character_value` work with bytes as well)
 - rust-lang/rust#157410 (Implement rustc_public::CrateDef{,Type} for FieldDef)
 - rust-lang/rust#157605 (Arg splat experiment - syntax impl)
 - rust-lang/rust#157630 (Add multibyte JSON diagnostic regression test)
 - rust-lang/rust#157633 (Reorder `impl` restriction rendering and add bottom margin)
 - rust-lang/rust#157642 (Report duplicate relaxed bounds during ast lowering)
 - rust-lang/rust#157652 (fix doc for unicode normalization faq on `casefold` APIs)
 - rust-lang/rust#157661 (Update to ar_archive_writer v0.5.2)
 - rust-lang/rust#157668 (Add test for matches in `rustc_must_match_exhaustively`)

Failed merges:

 - rust-lang/rust#157670 (Rename `errors.rs` file to `diagnostics.rs` (4/N))
@JonathanBrouwer

Copy link
Copy Markdown
Contributor

@rust-timer build 7d25f50

@rust-timer

This comment has been minimized.

@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (7d25f50): comparison URL.

Overall result: ❌ regressions - no action needed

Benchmarking means the PR may be perf-sensitive. Consider adding rollup=never if this change is not fit for rolling up.

@rustbot label: -S-waiting-on-perf -perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.2% [0.2%, 0.2%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -2.1%, secondary -5.6%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-2.1% [-2.1%, -2.1%] 1
Improvements ✅
(secondary)
-5.6% [-5.6%, -5.6%] 1
All ❌✅ (primary) -2.1% [-2.1%, -2.1%] 1

Cycles

Results (secondary -3.9%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-3.9% [-3.9%, -3.9%] 1
All ❌✅ (primary) - - 0

Binary size

This perf run didn't have relevant results for this metric.

Bootstrap: 525.47s -> 516.835s (-1.64%)
Artifact size: 400.80 MiB -> 401.36 MiB (0.14%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ICE]: next-solver regression: unexpected type in foreign function: Coroutine

8 participants