-
propose case-by-case uplift for clippy lints (scottmcm) & cancel FCP
- merge: Uplift lints from clippy to rustc (rust-lang/rust#53224)
-
niko to post summary comment on turbofish RFC and postpone
- update: thought about it, didn't act yet because pondering
-
mem::zeroed/uninit: panic on types that do not permit zero-initialization #66059
- Centril to write a comment
- Jan 6 --
Pin
and rogueDerefMut
impls #66544 (proposed)
-
ffi-unwind and the "C" ABI (proposed)
-
dyn Trait + coherence interaction #57893
-
stacked borrows overview +
&self
in AtomicUsize + maybe the embedded interactions (proposed)
-
roadmap + next edition (proposed)
- see also this list which only Niko filled out :)
-
unsafe code and
&raw
in next edition (proposed)
- no update
- rust-lang/rfcs#2835 (comment) check your boxes?
- josh, boats, pnkfelix, scott
&mut
ref types and borrows are on nightly but no RFC -- need one?- Let's have an RFC.
- We should think more about our story for recursion limits?
- could lift the standard recursion limit for now
- but what about
loop { .. }
- currently: we have a step counter that overflows at some point (counts terminators)
- tied to an unstable attribute right now
- Erroneous constants & what counts as dead code? (see discussion below).
- preparing blog post, have to schedule a meeting
-
Relevant issue: rust-lang/rust#57893
-
no update
- no update
- no update
- dynamic semantics almost implemented, rust-lang/rust#67668
- rust-lang/rust#66296 implemented
None this week
-
Usage of erroneous constant can be omitted on nightly and beta #67083
-
Pin
is unsound due to rogue Deref/DerefMut implementations rust-lang/rust#66544- Scheduled meeting for Jan 6th
-
Coherence can be bypassed by an indirect impl for a trait object
- (see above)
-
Stabilize
#![feature(slice_patterns)]
in 1.42.0 -- #67712- check your boxes :)
-
Treat extern statics just like statics in the "const pointer to static" representation #67630
- Felix can ask about triggering (new?) UB in user code and whatnot.
-
WIP: no longer promote non-pattern const functions #67531
- Decided to r+
-
Expr walking structural match (reopened) #67088
- MIR version: rust-lang/rust#67343 (WIP)
- short version:
- trying to add a refinement to the type-based check, too conservative, was breaking existing use cases
- alternative: value-based check looking to include things like
None::<IllegalType>
- some questions arise around
const fn
calls and a few other cases, and of course const generics - related:
[None::<String>; 22]
- static initializers
- const initializers
- alternative: value-based check looking to include things like
- there are two "competing" PRs right now, one based on HIR (maybe HAIR) and one based on MIR
- trying to add a refinement to the type-based check, too conservative, was breaking existing use cases
-
mem::zeroed/uninit: panic on types that do not permit zero-initialization #66059
- no updates since last meeting
- TL;DR of what we said before
- Centril thinks it would be good to have the full plan as "prose" and FCP that one so we don't have to re-FCP every step.
- Update: crater regressions categorized
- Who will follow up with Ralf? Maybe centril?
- To land this PR we need: (Centril to leave comment)
- Preliminary write-up of the rules around which types permit zero-initialization
- Something we can point to to help people understand when
mem::zeroed
andmem::uninitialized
will panic - (To what extent was this covered in an RFC? Maybe only "suggested"? "Inspired by?")
-
(request) Extend
#[must_use]
to Pin #67387- Niko to summarize their concerns, note the
Deref
trait, and generally encourage doing something for pin now and considering a more general extension separately
- Niko to summarize their concerns, note the
-
Casting or adding type ascription to panic!() triggers unreachable_code
- deferred till we have more folks
- Centril listed some options
- author gave feedback.
-
Add configurable, per-item instruction limit for CTFE
- would prefer if you are able to attach these definitions to the const fn definition more than the use, in contrast to with macros --Niko
- current infinite loop detector is very slow
-
PartialEq implementation for RangeInclusive is unsound
- this is due to unsound specialization implementation
- maybe a good idea to organize some form of audit
- another question might be how we could try to implement the "always applicable" rules in compiler / chalk, they haven't received much attention
-
Pin
is unsound due to rogue Deref/DerefMut implementations #66544- see above
-
Tracking issue for RFC 2645, "Transparent Unions and Enums" #60405
- centril is thinking of stabilizing
#[repr(transparent)]
for enums:- Nice to have univariant enums & structs behave the same way in general as a form of "algebraic data types" are sane.
#[repr(transparent)]
applied to a univariant enum behaves as if it were a struct- defer stablization for unions
- centril is thinking of stabilizing
-
Arc::drop has a (potentially) dangling shared ref #55005
- still nominated, planning to schedule a meeting
-
Tracking issue for RFC 2091: Implicit caller location #47809
- just wanted to call attention to this, clear nomination bit after meeting
-
floating point to integer casts can cause undefined behaviour #10184
- last time we talked, we concluded that it made sense to
- adopt saturated semantics as the default
- maybe offer a
-Z
flag to opt out for a time
- there has been plenty of discussion in the meantime
- how do we go forward here?
- a summary might be an amazing contribution --niko
- last time we talked, we concluded that it made sense to
-
Calling methods on generic parameters of const fns
- We can continue with nightly experimentation without the RFC merged.
- Niko will comment that we are OK with ^---.
- Want another meeting? (Monday, 17/18:00 PM)
- We can continue with nightly experimentation without the RFC merged.
-
Some older items that haven't moved in a while, can we do something?
-
- It seems like maybe we just want to close this?
- There is a problem here, do we want to take another stab at reaching consensus?
-
-
Some recent additions:
-
Recap:
-
Uplift lints from clippy to rustc (rust-lang/rust#53224)
- Scott to close? What's up with that?
-
- dereference with ralfjung / compiler’s llvm-wg / ucg wg?