---
# System prepended metadata

title: Libs Meeting 2022-03-30
tags: [Minutes, Libs Meetings]

---

# Libs Meeting 2022-03-30

###### tags: `Libs Meetings` `Minutes`

**Meeting Link**: https://meet.jit.si/rust-libs-meeting-ujepnbwg2lzqgt6wvrndwimi
**Attendees**: Josh Stone, Amanieu, Mara, Jane, Josh Triplett, The 8472, scottmcm, Wedson Almeida Filho, Miguel

## Agenda

- [Open Action Items](https://hackmd.io/Uehlc0qUQfWfvY1swYWRgQ)
- Triage
- Anything else?

## Triage

### Critical

None

### Prioritization Requested

- [3 `rust-lang/rust` `T-libs` `I-prioritize` items](https://github.com/rust-lang/rust/issues?q=label:T-libs+label:I-prioritize+is:open)
  - [[95203](https://github.com/rust-lang/rust/issues/95203)] *io::Error is UnwindSafe, but only on 64\-bit platforms*
    - Can we automatically detect these mistakes?
      - Semverver, maybe?
    - Fix merged. Backport accepted.
  - [[95269](https://github.com/rust-lang/rust/issues/95269)] *Pointer dereference after free with allocator containing shared state*
    - Issue with unstable allocator api.
    - Open PR to fix it.
    - The code with the bug would probably have been simpler if panics in drop would always abort.
    - Marked as medium.
  - [[95334](https://github.com/rust-lang/rust/issues/95334)] *{Rc,Arc}::{new\_uninit\_slice,from\_iter} create too large references*
    - High priority. 

### Backports

- [1 `rust-lang/rust` `T-libs` `beta-nominated` items](https://github.com/rust-lang/rust/issues?q=label:T-libs+label:beta-nominated)
  - [[95256](https://github.com/rust-lang/rust/pull/95256)] *Ensure io::Error's bitpacked repr doesn't accidentally impl UnwindSafe*
    - Accepted. see above.

### Nominated

- [2 `rust-lang/rust` `T-libs` `I-libs-nominated` items](https://github.com/rust-lang/rust/issues?q=label:T-libs+label:I-libs-nominated+is:open)
  - [[92686](https://github.com/rust-lang/rust/pull/92686)] *Add debug assertions to some unsafe functions*
    - The `assert_unsafe_precondition` macro is like `assert_debug`, but ignored during const eval, and aborts rather than panics.
    - Amanieu to try this with both abort() and panic!().
    - We could call the panic handler with PanicInfo::can_unwind set to false.
      - We could use the equivalent of C++'s `noexcept`.
    - Reassigned to Amanieu.
  - [[94231](https://github.com/rust-lang/rust/issues/94231)] *Stacked borrows fails on \`{ChunksMut,ChunksExactMut}::\_\_iterator\_get\_unchecked()\`*
    - We should run more of this through miri.
    - Removing the optimization alltogether probably has a very big effect on some use cases.
      - We could only optimize `fold` to simplify things, as it consumes the iterator. But it'd be a regression for things like `try_fold`, and everything that uses that.
    - This issue is probably only visible with miri, and not in real compiled programs.
    - We should increase test coverage. Does miri have code coverage? No, but would be useful.
    - The PR adds some unstable apis. -> Separate PR.
    - The 8472 to take over review. (Thanks!)

### Waiting on team

None

### Needs decision

- [1 `rust-lang/rust` `T-libs` `I-needs-decision` items](https://github.com/rust-lang/rust/issues?q=label:T-libs+label:I-needs-decision+is:open)
  - [[88025](https://github.com/rust-lang/rust/pull/88025)] *ScmCredentials netbsd implementation.*
    - We could check if there's anyone who cares about netbsd support in Rust.
    - The author is a regular libc contributor.

### Regressions

None

## Actions

- [ ] Reply to all issues/PRs discussed in this meeting, or add them to the [open action items](https://hackmd.io/Uehlc0qUQfWfvY1swYWRgQ).

_Generated by [fully-automatic-rust-libs-team-triage-meeting-agenda-generator](https://github.com/rust-lang/libs-team/tree/main/tools/agenda-generator)_