Skip to content
This repository was archived by the owner on Oct 9, 2018. It is now read-only.

Latest commit

 

History

History
115 lines (100 loc) · 5.07 KB

2015-06-10.md

File metadata and controls

115 lines (100 loc) · 5.07 KB

Subteam report: lang 2015-06-10

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.

Dashboard

RFC phase

  • PR #197: ManuallyDrop type gives precise control of dtors of inline data.
  • PR #243: Trait-based exception handling
  • PR #638: Specify unwinding
  • PR #697: Disallow omitting the ABI in extern declarations
  • PR #733: Amend macro future proofing RFC
  • PR #756: Allow closure expressions to expand to a & or &mut temporary
  • PR #865: Update RFC 195 to account for RFC 246.
  • PR #873: Allow macros in types
  • PR #890: RFC: Custom preludes
  • PR #953: overloaded assignment operations a += b
  • PR #1062: Constants that depend on type parameters in generic code
  • PR #1129: IndexAssign: overloading the a[b] = c expression
  • PR #1135: Implement raw fat pointer comparisons
  • PR #1148: Mutually exclusive traits
  • PR #1150: RFC: rename attribute
  • PR #1154: Disjoins (anonymous enums)
  • PR #1156: Adjust default object bounds [breaking change]
  • FCP PR #987: Modify RFC #803 (type ascription) to make type ascription expressions lvalues
  • FCP PR #1052: Clarify cast rules, especially regarding fat pointers.
  • FCP PR #1122: RFC: Semantic versioning for the language
  • FCP PR #1131: Add an expect intrinsic

Implementation phase

High priority issues

  • Issue #24622: Mismatched assumptions for interaction between associated type and lifetime in trait
  • Issue #25310: Passing a Fn to an fn now requires explicit lifetimes for the Fn and all references passed to it when invoked
  • Issue #25658: In macros, $($x:expr),* fragments can be used to bypass future-proofing restrictions
  • Issue #25860: Implied bounds on nested references + variance = soundness hole

Needs decision