Subteam report: lang 2015-10-09
Highlights
This week we merged the following RFCs:
- PR #1228:
Place left arrow syntax (
place <- expr) - PR #1245: Amend #911 const-fn to allow unsafe const functions
- PR #1260:
RFC: Allow a re-export for
main
The placement feature and its syntax will continue to be discussed prior to stabilization in the tracking issue.
We are moving one RFC into final comment period:
- FCP PR #1268: Allow overlapping implementations for marker traits
We otherwise spent time reviewing high priority issues and discussing some thoughts about the placement protocol, which @huonw has recorded.
Dashboard
Stabilization phase
- FCP Issue #27701: Tracking issue for libcore stabilization
- Issue #27336: Tracking Issue for RFC 213: Default Type Parameter Fallback
- Issue #27732: Tracking issue for DST coercions (coerce_unsized, unsize) stabilization
- Issue #27751:
Tracking issue for
rawstabilization - Issue #27779: Tracking issue for placement new
Implementation phase
- Issue #13231: opt-in built-in bounds traits RFC tracker
- Issue #15552: Implement lifetime elision
- Issue #15701: Add attributes to expressions, etc.
- Issue #16293: Implement UFCS (Tracking RFC 132)
- Issue #17307: Implement associated items
- Issue #18469: Implement revised coercion rules
- Issue #21939: Tracking issue for Finalize defaulted type parameters (RFC 213)
- Issue #22020: Tracking issue for Integer Overflow (RFC 560)
- Issue #22181:
boxandinexpressions (tracking issue for RFC 809) - Issue #23416: Type ascription (tracking issue for RFC 803)
- Issue #24111: const fn tracking issue (RFC 911)
- Issue #24263: discriminant_value intrinsic -- tracking issue for 639
- Issue #27060: repr(packed) allows invalid unaligned loads
- Issue #27336: Tracking Issue for RFC 213: Default Type Parameter Fallback
Issues needing a decision
- Issue #26502: Do not warn about unused arguments in default methods
- Issue #27499:
Use different numbers of
#s when expanding documentation comments - Issue #27972: Allow where clauses involving types which don't include a type parameter.
- Issue #28160:
Settle execution order uncertainty for
+=
RFC phase
- FCP PR #1268: Allow overlapping implementations for marker traits
- PR #197:
ManuallyDroptype gives precise control of dtors of inline data. - PR #243: Trait-based exception handling
- PR #733: Amend macro future proofing RFC
- PR #1062: Constants that depend on type parameters in generic code
- PR #1129:
IndexAssign: overloading the
a[b] = cexpression - PR #1148: Mutually exclusive traits
- PR #1177: Anonymous/placeholder lifetime "'_".
- PR #1180:
Propose
Interior<T>data-type, to allow moves out of the dropped value during the drop hook. - PR #1190: Style: function declarations
- PR #1196: RFC for allowing eliding more type parameters.
- PR #1210: RFC: impl specialization
- PR #1248: Safe intrinsics RFC
- PR #1258: Add macros to get the values of configuration flags
- PR #1260:
RFC: Allow a re-export for
main - PR #1275: Support interrupt calling conventions
- PR #1296:
RFC: Add an
aliasattribute to #[link] and -l - PR #1300: Intrinsic semantics
- PR #1303:
Add a
let...elseexpression, similar to Swift'sguard let...else - PR #1305: Abstract output type parameters
High priority issues
- Issue #24622: Mismatched assumptions for interaction between associated type and lifetime in trait
- 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
- Issue #26739: In macros, expr followed by { is buggy
- Issue #26775: 'pub extern crate' is accepted and behaves badly
- Issue #27060: repr(packed) allows invalid unaligned loads
- Issue #28450: Type alias can be used to bypass privacy check
- Issue #28514: Private trait's methods reachable through UFCS