2019.10.10

2019-10-10

Announcements

  • @centril is splitting libsyntax into data and logic parts which will decrease the amount of code librustc depends on.

  • @nagisa a cross-platform version of stacker which will allow us to avoid stack overflows in rustc.

  • There is a compiler team design meeting scheduled for tomorrow (2019-10-11) to discuss some of @Zoxc’s PRs.

  • @pnfelix is revising the code that handles structural match checking.

  • @nikomatsakis has a PR (#65232) up which helps us get closer to lazy normalization.

  • wg-traits is going to start holding a weekly “office hours” video call to help answer questions and teach people about trait system internals.

Volunteers wanted

Backport nominations

  • Ensure that associated async fns have unique fresh param names #65142

    • Approved for beta backport
  • Account for macro invocation in let mut $pat diagnostic. #65123

    • Approved for beta backport
  • Fix the start/end byte positions in the compiler JSON output #65074

    • Declined for beta backport
  • extract expected return type for async fn generators #64999

    • Declined for beta backport

Working group sync

wg-rustc-dev-guide

  • wg-rustc-dev-guide has been working on transcribing videos from the compiler lecture series into rustc-dev-guide chapters.

  • Originally, individuals were assigned one or lectures to complete but that hasn’t worked very well.

  • Recently, they’re trying to work on one video at a time as a team with much better results.

  • There’s a PR open for a new chapter based on the ty lecture.

Link to full discussion

wg-llvm

  • rustc has upgraded to the LLVM 9 release;
    • Which allows us to replace some the emscripten stuff with LLVM’s toolchain. The less emscripten we have to deal with, the better!
    • As part of these upgrades we will likely end up dropping support for the super old LLVM 6, which in turn allows us to stop building the unnecessary Go & OCaml bindings to LLVM, which in turn helps rustc build times slightly.
  • People are also working on enabling use of the new pass manager, which might give us some tangible code quality improvements over the status quo.

Link to full discussion