-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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 and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 9 pull requests #108998
Rollup of 9 pull requests #108998
Conversation
Co-authored-by: Ruby Lazuli <[email protected]>
The working group got renamed
Add documentation about the memory layout of `Cell` rust-lang#101717 guaranteed the memory layout of `UnsafeCell<T>`. This property (a guaranteed memory layout) can be useful to have on `Cell<T>` as well. (Note that `Cell<u8>` [already doesn't trigger the `improper_ctypes` lint](https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=34af59ef60b96d8a8bdaec1d52cb5420) since it is `#[repr(transparent)]`). The concrete use-case is for the crate [`objc2`](https://github.com/madsmtm/objc2) to specify that `Cell<T>` is safe to use as an instance variable when `T` is. Fixes rust-lang#79303. --- I'm unsure if we should specify less, for example say that the `Cell` may have extra restrictions on when it may be accessed, or if that's implicit in the (deliberately minimal) way I've worded it here?
…q-on-num-var, r=lcnr Emit alias-eq when equating numeric var and projection This doesn't fix everything having to do with projections and infer vars, but it does fix a common case I saw in HIR typeck. r? `@lcnr`
…pastorino Do not ICE when we have fn pointer `Fn` obligations with bound vars in the self type We never supported solving `for<'a> fn(&'a ()): Fn(&'a ())` -- I tried to add that support in rust-lang#104929, but iirc `@lcnr` wanted to support this more generally by eagerly instantiating trait predicate binders with placeholders. That never happened due to blockers in the old solver, but we probably shouldn't ICE in any case. On the bright side, this passes on the new solver :^)
fix(lexer): print whitespace warning for \x0c - close rust-lang#108275 - discussion: rust-lang#108403
…n-impl, r=petrochenkov feat: implement better error for manual impl of `Fn*` traits Fixes rust-lang#39259 cc `@estebank` (you gave me some advice in the linked issue, would you like to review?)
improve readability of winnowing
…hifting, r=BoxyUwU Don't even try to combine consts with incompatible types ~I left a more detailed explanation for why this fixes this issue in the UI test, but in general, we should not try to unify const infer vars and rigid consts if they have incompatible types. That's because we don't want something like a `ConstArgHasType` predicate to suddenly go from passing to failing, or vice versa, due to a shallow resolve.~ 1. Use the `type_of` for a parameter in `try_eval_lit_or_param`, instead of the "expected" type from a `WithOptConstParam` def id. 2. Don't combine consts that have incompatible types. Fixes rust-lang#108781
Update triagebot rust-analyzer team mention The working group got renamed
…ure-default-impl, r=cjgillot Forbid `#[target_feature]` on safe default implementations Fixes rust-lang#108646.
@bors r+ rollup=never p=9 |
⌛ Testing commit f74bb35 with merge a856e3fb9ce9af4012c5b9e7d2ba8f2701330f32... |
💔 Test failed - checks-actions |
no asm or aarch related changes in the pr as far as I see, probably spurious |
⌛ Testing commit f74bb35 with merge bfb184965529363af27e49126c9343ac8b3e0e17... |
💔 Test failed - checks-actions |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR: previous master: 6dfaa14366 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (19c5376): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesThis benchmark run did not return any relevant results for this metric. |
The job Click to see the possible cause of the failure (guessed by this bot)
|
The job Click to see the possible cause of the failure (guessed by this bot)
|
Successful merges:
Cell
#106921 (Add documentation about the memory layout ofCell
)Fn
obligations with bound vars in the self type #108834 (Do not ICE when we have fn pointerFn
obligations with bound vars in the self type)Fn*
traits #108930 (feat: implement better error for manual impl ofFn*
traits)#[target_feature]
on safe default implementations #108983 (Forbid#[target_feature]
on safe default implementations)Failed merges:
r? @ghost
@rustbot modify labels: rollup
Create a similar rollup