-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Implement pattern type ffi checks #136193
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Conversation
r? @chenyukang rustbot has assigned @chenyukang. Use |
784bbfa
to
937866a
Compare
@bors r=chenyukang |
@bors rollup |
…=chenyukang Implement pattern type ffi checks Previously we just rejected pattern types outright in FFI, but that was never meant to be a permanent situation. We'll need them supported to use them as the building block for `NonZero` and `NonNull` after all (both of which are FFI safe). best reviewed commit by commit.
Seems to have failed in rollup, I think it's this PR?
@bors r- |
This comment has been minimized.
This comment has been minimized.
937866a
to
60ed9db
Compare
@bors r=chenyukang |
@bors rollup=maybe |
…=chenyukang Implement pattern type ffi checks Previously we just rejected pattern types outright in FFI, but that was never meant to be a permanent situation. We'll need them supported to use them as the building block for `NonZero` and `NonNull` after all (both of which are FFI safe). best reviewed commit by commit.
…kingjubilee Rollup of 9 pull requests Successful merges: - rust-lang#135439 (Make `-O` mean `OptLevel::Aggressive`) - rust-lang#136193 (Implement pattern type ffi checks) - rust-lang#136235 (Pretty print pattern type values with transmute if they don't satisfy their pattern) - rust-lang#136311 (Ensure that we never try to monomorphize the upcasting or vtable calls of impossible dyn types) - rust-lang#136315 (Use short ty string for binop and unop errors) - rust-lang#136393 (Fix accidentally not emitting overflowing literals lints anymore in patterns) - rust-lang#136530 (Implement `x perf` directly in bootstrap) - rust-lang#136580 (Couple of changes to run rustc in miri) - rust-lang#136589 (Enable "jump to def" feature on rustc docs) r? `@ghost` `@rustbot` modify labels: rollup
…kingjubilee Rollup of 9 pull requests Successful merges: - rust-lang#135439 (Make `-O` mean `OptLevel::Aggressive`) - rust-lang#136193 (Implement pattern type ffi checks) - rust-lang#136235 (Pretty print pattern type values with transmute if they don't satisfy their pattern) - rust-lang#136311 (Ensure that we never try to monomorphize the upcasting or vtable calls of impossible dyn types) - rust-lang#136315 (Use short ty string for binop and unop errors) - rust-lang#136393 (Fix accidentally not emitting overflowing literals lints anymore in patterns) - rust-lang#136530 (Implement `x perf` directly in bootstrap) - rust-lang#136580 (Couple of changes to run rustc in miri) - rust-lang#136589 (Enable "jump to def" feature on rustc docs) r? `@ghost` `@rustbot` modify labels: rollup
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#134367 (Stabilize `feature(trait_upcasting)`) - rust-lang#135354 ([Debuginfo] Add MSVC Synthetic and Summary providers to LLDB) - rust-lang#135940 (Update toolstate maintainers) - rust-lang#135945 (Remove some unnecessary parens in `assert!` conditions) - rust-lang#136577 (Pattern Migration 2024: try to suggest eliding redundant binding modifiers) - rust-lang#136598 (Fix suggestion for `dependency_on_unit_never_type_fallback` involving closures + format args expansions) - rust-lang#136653 (Remove dead code from rustc_codegen_llvm and the LLVM wrapper) - rust-lang#136664 (replace one `.map_or(true, ...)` with `.is_none_or(...)`) Failed merges: - rust-lang#136193 (Implement pattern type ffi checks) r? `@ghost` `@rustbot` modify labels: rollup
…=chenyukang Implement pattern type ffi checks Previously we just rejected pattern types outright in FFI, but that was never meant to be a permanent situation. We'll need them supported to use them as the building block for `NonZero` and `NonNull` after all (both of which are FFI safe). best reviewed commit by commit.
☔ The latest upstream changes (presumably #136697) made this pull request unmergeable. Please resolve the merge conflicts. |
60ed9db
to
f1f996a
Compare
@bors r=chenyukang |
…=chenyukang Implement pattern type ffi checks Previously we just rejected pattern types outright in FFI, but that was never meant to be a permanent situation. We'll need them supported to use them as the building block for `NonZero` and `NonNull` after all (both of which are FFI safe). best reviewed commit by commit.
Rollup of 7 pull requests Successful merges: - rust-lang#134090 (Stabilize target_feature_11) - rust-lang#134999 (Add cygwin target.) - rust-lang#135025 (Cast allocas to default address space) - rust-lang#135408 (x86: make SSE2 required for i686 hardfloat targets and use it to pass SIMD types) - rust-lang#135549 (Document some safety constraints and use more safe wrappers) - rust-lang#136193 (Implement pattern type ffi checks) - rust-lang#136699 (std: replace the `FromInner` implementation for addresses with private conversion functions) Failed merges: - rust-lang#136758 (tests: `-Copt-level=3` instead of `-O` in assembly tests) r? `@ghost` `@rustbot` modify labels: rollup
…=chenyukang Implement pattern type ffi checks Previously we just rejected pattern types outright in FFI, but that was never meant to be a permanent situation. We'll need them supported to use them as the building block for `NonZero` and `NonNull` after all (both of which are FFI safe). best reviewed commit by commit.
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#135549 (Document some safety constraints and use more safe wrappers) - rust-lang#135965 (In "specify type" suggestion, skip type params that are already known) - rust-lang#136193 (Implement pattern type ffi checks) - rust-lang#136646 (Add a TyPat in the AST to reuse the generic arg lowering logic) - rust-lang#136699 (std: replace the `FromInner` implementation for addresses with private conversion functions) - rust-lang#136874 (Change the issue number for `likely_unlikely` and `cold_path`) - rust-lang#136884 (Lower fn items as ZST valtrees and delay a bug) - rust-lang#136885 (i686-linux-android: increase CPU baseline to Pentium 4 (without an actual change) r? `@ghost` `@rustbot` modify labels: rollup
…iaskrgr Rollup of 8 pull requests Successful merges: - rust-lang#135549 (Document some safety constraints and use more safe wrappers) - rust-lang#135965 (In "specify type" suggestion, skip type params that are already known) - rust-lang#136193 (Implement pattern type ffi checks) - rust-lang#136646 (Add a TyPat in the AST to reuse the generic arg lowering logic) - rust-lang#136874 (Change the issue number for `likely_unlikely` and `cold_path`) - rust-lang#136884 (Lower fn items as ZST valtrees and delay a bug) - rust-lang#136885 (i686-linux-android: increase CPU baseline to Pentium 4 (without an actual change) - rust-lang#136891 (Check sig for errors before checking for unconstrained anonymous lifetime) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of rust-lang#136193 - oli-obk:pattern-type-ffi-checks, r=chenyukang Implement pattern type ffi checks Previously we just rejected pattern types outright in FFI, but that was never meant to be a permanent situation. We'll need them supported to use them as the building block for `NonZero` and `NonNull` after all (both of which are FFI safe). best reviewed commit by commit.
Previously we just rejected pattern types outright in FFI, but that was never meant to be a permanent situation. We'll need them supported to use them as the building block for
NonZero
andNonNull
after all (both of which are FFI safe).best reviewed commit by commit.