Skip to content

Conversation

@Soveu
Copy link
Contributor

@Soveu Soveu commented Sep 25, 2023

I think that is everything? If there is any documentation regarding extern and/or varargs to correct, let me know, some quick greps suggest that there might be none.

Tracking issue: #100189

@rustbot
Copy link
Collaborator

rustbot commented Sep 25, 2023

r? @wesleywiser

(rustbot has picked a reviewer for you, use r? to override)

@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 Sep 25, 2023
@Soveu
Copy link
Contributor Author

Soveu commented Sep 25, 2023

@rustbot label F-extended_varargs_abi_support

@rustbot rustbot added the F-extended_varargs_abi_support `#![feature(extended_varargs_abi_support)]` label Sep 25, 2023
@rust-log-analyzer

This comment has been minimized.

(accepted, extended_key_value_attributes, "1.54.0", Some(78835), None),
/// Allows using `efiapi`, `aapcs`, `sysv64` and `win64` as calling
/// convention for functions with varargs.
(accepted, extended_varargs_abi_support, "1.65.0", Some(100189), None),
Copy link
Contributor

Choose a reason for hiding this comment

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

use CURRENT_RUSTC_VERSION instead of a version number here

@tgross35
Copy link
Contributor

tgross35 commented Oct 5, 2023

Tracking issue: #100189

@bors
Copy link
Collaborator

bors commented Oct 16, 2023

☔ The latest upstream changes (presumably #116550) made this pull request unmergeable. Please resolve the merge conflicts.

@Soveu
Copy link
Contributor Author

Soveu commented Nov 21, 2023

@wesleywiser

@bors
Copy link
Collaborator

bors commented Dec 11, 2023

☔ The latest upstream changes (presumably #118823) made this pull request unmergeable. Please resolve the merge conflicts.

@apiraino
Copy link
Contributor

r? compiler

@rustbot rustbot assigned Nadrieril and unassigned wesleywiser Feb 22, 2024
@Nadrieril
Copy link
Member

I'm on vacation for a few days :)
r? compiler

@rustbot rustbot assigned cjgillot and unassigned Nadrieril Feb 22, 2024
@cjgillot cjgillot added I-lang-nominated Nominated for discussion during a lang team meeting. I-compiler-nominated Nominated for discussion during a compiler team meeting. labels Mar 3, 2024
@cjgillot
Copy link
Contributor

cjgillot commented Mar 3, 2024

Not completely sure which team should be nominated for stabilization, so labeling both in doubt.

@pnkfelix
Copy link
Contributor

pnkfelix commented Mar 7, 2024

Just to add on to @cjgillot 's comment above: @wesleywiser and I could not remember earlier today whether T-lang wants to own FCP'ing changes like this that are restricted to extending the set of calling-conventions (i.e. the conv in extern "conv" fn foo(...)), which is largely a detail about what platforms one is interoperating with, and not about changing the expressiveness of the Rust language as a whole in the abstract.

(My own gut reaction is that T-compiler is a more natural owner for this than T-lang, but I wasn't certain and so it seems best to let the nomination stand and let the two teams duke it out.)

@apiraino
Copy link
Contributor

Removing the T-compiler nomination until after T-lang discussed this. Feel free to re-add T-compiler!

@rustbot label -I-compiler-nominated

@rustbot rustbot removed the I-compiler-nominated Nominated for discussion during a compiler team meeting. label Mar 14, 2024
bors added a commit to rust-lang-ci/rust that referenced this pull request Nov 30, 2024
Rollup of 10 pull requests

Successful merges:

 - rust-lang#116161 (Stabilize `extended_varargs_abi_support`)
 - rust-lang#132750 ([AIX] handle libunwind native_libs)
 - rust-lang#133488 (tests: Add regression test for self referential structs with cow as last field)
 - rust-lang#133569 (Bump `ruzstd` to 0.7.3)
 - rust-lang#133585 (Do not call `extern_crate` on current trait on crate mismatch errors)
 - rust-lang#133587 (Fix target_feature handling in freg of LoongArch inline assembly)
 - rust-lang#133599 (Add `+forced-atomics` feature to esp32s2 no_std  target)
 - rust-lang#133620 (Simplify hir_typeck_pass_to_variadic_function)
 - rust-lang#133623 (Improve span handling in `parse_expr_bottom`.)
 - rust-lang#133625 (custom MIR: add doc comment for debuginfo)

r? `@ghost`
`@rustbot` modify labels: rollup
bors added a commit to rust-lang-ci/rust that referenced this pull request Nov 30, 2024
Rollup of 10 pull requests

Successful merges:

 - rust-lang#116161 (Stabilize `extended_varargs_abi_support`)
 - rust-lang#132750 ([AIX] handle libunwind native_libs)
 - rust-lang#133488 (tests: Add regression test for self referential structs with cow as last field)
 - rust-lang#133569 (Bump `ruzstd` to 0.7.3)
 - rust-lang#133585 (Do not call `extern_crate` on current trait on crate mismatch errors)
 - rust-lang#133587 (Fix target_feature handling in freg of LoongArch inline assembly)
 - rust-lang#133599 (Add `+forced-atomics` feature to esp32s2 no_std  target)
 - rust-lang#133620 (Simplify hir_typeck_pass_to_variadic_function)
 - rust-lang#133623 (Improve span handling in `parse_expr_bottom`.)
 - rust-lang#133625 (custom MIR: add doc comment for debuginfo)

r? `@ghost`
`@rustbot` modify labels: rollup
@bors bors merged commit dd99f11 into rust-lang:master Nov 30, 2024
6 checks passed
@rustbot rustbot added this to the 1.85.0 milestone Nov 30, 2024
@chorman0773
Copy link
Contributor

This is in beta but not yet stable. It should probably be reverted as https://godbolt.org/z/fYzxa8xW5 compiles with this but probably ought not to, at least on targets like i686-pc-windows-msvc where the underlying abi of extern "system" is incompatible with varargs.

@chorman0773
Copy link
Contributor

@rustbot label +I-compiler-nominated +I-lang-nominated

Should this be reverted (and backported) to allow addressing whether extern "system" should allow varargs functions, and when?

@rustbot rustbot added I-compiler-nominated Nominated for discussion during a compiler team meeting. I-lang-nominated Nominated for discussion during a lang team meeting. labels Feb 12, 2025
@workingjubilee workingjubilee removed I-lang-nominated Nominated for discussion during a lang team meeting. I-compiler-nominated Nominated for discussion during a compiler team meeting. labels Feb 12, 2025
@workingjubilee
Copy link
Member

moving that discussion to a new issue.

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

Labels

F-extended_varargs_abi_support `#![feature(extended_varargs_abi_support)]` I-lang-easy-decision Issue: The decision needed by the team is conjectured to be easy; this does not imply nomination relnotes Marks issues that should be documented in the release notes of the next release. 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. T-lang Relevant to the language team

Projects

None yet

Development

Successfully merging this pull request may close these issues.