T-Lang Meeting: 2019.09.12

Action items

  • open a bug for re-rebalance coherence behavior @Nicholas M
  • try to mentor a fix
  • shepherd the RFC thread #2753 @Josh T
  • josh to write an fcp request for #63909
  • decided to skip the full “waiting window”
  • in the write-up, clarify the expected future plans (“this will be UB in the future”)
  • someone should try to unstick the bot on RFC 2523  @Josh T 

Triage

  • Review last week’s action items
  • none
  • none
  • Coherence can be bypassed by an indirect impl for a trait object #57893
  • include!(foo) will include the first expression and nothing more
  • currently this is silent
  • should we:
  • warn, preserving current behavior (perhaps surprisingly)
  • error, on extra tokens (intersection)
  • future-compatibility warning ← why not :)
  • successfully parse all expressions
  • but have to figure out what it expands to
  • ok
  • we mentioned RFC
  • some push back that it’s overkill
  • at least a “mini RFC” with a doc, as requested by petrochenkov, seems good
  • we’d be happy with a fcp merge along with a clear spec — josh will write
  • Note: moved to FCP
  • consensus in previous meeting was current state is unfortunate:
  • removed the abort from extern "C" fn to avoid breaking folks
  • but now there is a real possibility of miscompilation (and inconsistency) because we are tagging calls to extern “C” as “no-unwind”
  • proper fix is have an RFC, but we have to do something in the meantime
  • since then, a lot of discussion in/around discord etc since then
  • double-checking whether anyone has concerns
  • centril, via Josh:
  • Somewhat favors an extern "C panic" ABI (with no subtyping relationship) over #[unwind]
  • change of heart: felt he would rather leave the UB in place (i.e. not land #63909)