1. 02 3月, 2017 1 次提交
    • A
      convert AdtDef::destructor to on-demand · e294fd5e
      Ariel Ben-Yehuda 提交于
      This removes the Cell from AdtDef. Also, moving destructor validity
      checking to on-demand (forced during item-type checking) ensures that
      invalid destructors can't cause ICEs.
      
      Fixes #38868.
      Fixes #40132.
      e294fd5e
  2. 01 3月, 2017 4 次提交
  3. 28 2月, 2017 2 次提交
  4. 26 2月, 2017 5 次提交
  5. 25 2月, 2017 8 次提交
  6. 24 2月, 2017 3 次提交
  7. 19 2月, 2017 1 次提交
  8. 18 2月, 2017 1 次提交
  9. 16 2月, 2017 1 次提交
  10. 13 2月, 2017 2 次提交
  11. 10 2月, 2017 1 次提交
  12. 09 2月, 2017 2 次提交
  13. 06 2月, 2017 1 次提交
  14. 03 2月, 2017 5 次提交
    • A
      Add warning for () to ! switch · 2cc84df4
      Andrew Cann 提交于
      2cc84df4
    • N
      rejigger how we handle used trait imports · 78f7ac56
      Niko Matsakis 提交于
      The previous way was not friendly to incremental compilation. The new
      plan is to compute, for each body, a set of trait imports used in that
      body (slightly subtle: for a closure, we assign the trait imports to the
      enclosing fn). Then we walk all bodies and union these sets. The reason
      we do this is that we can save the individual sets in the incremental
      state, and then recompute only those sets that are needed. Before we
      were planning to save only the final union, but in that case if some
      components are invalidated we have to recompute *all* of them since we
      don't have enough information to "partly" invalidate a result.
      
      In truth, this set probably ought to be part of the `TypeckTables`;
      however, I opted not to do that because I don't want to have to
      save/restore the entire tables in the incremental state yet (since it
      contains a lot of `NodeId` references, and removing those is a
      significant refactoring).
      78f7ac56
    • N
      store typeck lints in the `TypeckTables` · d9aaca71
      Niko Matsakis 提交于
      Otherwise they are a "hidden output"
      d9aaca71
    • N
      93e0bc65
    • N
      5a601942
  15. 31 1月, 2017 1 次提交
  16. 29 1月, 2017 1 次提交
    • M
      Add clearer error message using `&str + &str` · b54f593c
      Michael Gattozzi 提交于
      This is the first part of #39018. One of the common things for new users
      coming from more dynamic languages like JavaScript, Python or Ruby is to
      use `+` to concatenate strings. However, this doesn't work that way in
      Rust unless the first type is a `String`. This commit adds a check for
      this use case and outputs a new error as well as a suggestion to guide
      the user towards the desired behavior. It also adds a new test case to
      test the output of the error.
      b54f593c
  17. 28 1月, 2017 1 次提交