Subteam reports: 2015-06-10


#1

Libs highlights

Full report

The following RFCs are entering their final comment period:

The following features are entering their final comment period:

Here are the decisions for last week’s FCP items:

The following feature is going to the core team for final stabilization approval:

Lang highlights

Full report

The following RFCs are entering final comment period:

  • PR #1156: Adjust default object bounds. (breaking change)
    • Since time is of the essence here, this RFC is being promoted to FCP immediately.
    • This is a breaking change that is being suggested because the current defaults have some shortcomings that seem worth correcting, and all evidence indicates that making this change will have negligible impact (details are in the RFC) in existing code. This would be an exception from normal policy.
    • Some prior discussion took place in a thread on internals.
  • PR #873: Allow macros in types
  • PR #865: Amendment to associated items RFC to account for the const/static split.
  • PR #756:
    Allow closure expressions to expand to a & or &mut temporary

The following RFCs have been around a long time without much action. It is not clear whether we are ready to reach a final decision, but I’d like to encourage comments. These RFCs are likely to enter FCP next week.

  • PR #197: ManuallyDrop trait, which allows types to disable the "automatic drop" their inline content that currently occurs.
  • PR #638: Specifies behavior during unwinding, particularly with respect to non-Rust code.
  • PR #890: RFC: Custom preludes.

Last week we moved a number of RFCs into the final comment period. Here is the outcome:

  • PR #1131: Add an expect intrinsic.
    • Approved.
  • PR #1052: Clarify cast rules, especially regarding fat pointers.
    • Still hammering out final details.
  • PR #1122: Semantic versioning for the language.
    • Approved.
  • PR #987: Modify RFC #803 (type ascription) to make type ascription expressions lvalues
    • Approved.

Tools highlights

Full report

This was a fairly quiet week for tooling, but progress continues to be made on various fronts. MSVC continues to be blocked on upgrading LLVM, which has run into another segfault and may take some time to investigate and fix. @nrc made some great progress on tracking performance metrics for the compiler, and the frontend is looking quite nice! @brson also continues to rewrite crater in Rust, soon enabling you to test a change against all of crates.io from home.

Soon nightlies for MSVC will also be available (note that unwinding still does not work), and shortly thereafter Cargo MSVC-host nightlies will also likely be available. This support also lends itself nicely to generating MUSL nightlies as well!

Compiler highlights

Full report

The major event this week is that @arielb1 has been added as a contributor to the compiler subteam. @arielb1 has been making numerous changes to the compiler, and in particular has landed a number of patches lately making improvements to compilation time. Thanks @arielb1!


#2

Ah looks like the link didn’t make it in, but @nrc’s awesome benchmarking frontend can be seen here: http://www.ncameron.org/perf-rustc/