Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement RFC495 semantics for slice patterns #32202

Merged
merged 15 commits into from
Jun 9, 2016

Commits on Jun 7, 2016

  1. Configuration menu
    Copy the full SHA
    719a591 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0c5930e View commit details
    Browse the repository at this point in the history

Commits on Jun 8, 2016

  1. Configuration menu
    Copy the full SHA
    70c25c8 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    088b7e2 View commit details
    Browse the repository at this point in the history
  3. implement RFC495 semantics for slice patterns

    non-MIR translation is still not supported for these and will happily ICE.
    
    This is a [breaking-change] for many uses of slice_patterns.
    arielb1 committed Jun 8, 2016
    Configuration menu
    Copy the full SHA
    5c717a6 View commit details
    Browse the repository at this point in the history
  4. wrap calls to lvalue_ty

    arielb1 committed Jun 8, 2016
    Configuration menu
    Copy the full SHA
    1a614f8 View commit details
    Browse the repository at this point in the history
  5. handle string literals correctly in match checking

    The root of the problem is that a string literal pattern is essentially of
    the form `&LITERAL`, in a single block, while match checking wants to
    split that.
    
    To fix that, I added a type field to the patterns in match checking,
    which allows us to distinguish between a full and split pattern.
    
    That file is ugly and needs to be cleaned. However, `trans::_match` calls
    it, so I think we should delay the cleanup until we kill that.
    
    Fixes rust-lang#30240
    arielb1 committed Jun 8, 2016
    Configuration menu
    Copy the full SHA
    5af5f26 View commit details
    Browse the repository at this point in the history
  6. address review comments

    arielb1 committed Jun 8, 2016
    Configuration menu
    Copy the full SHA
    8ac3b46 View commit details
    Browse the repository at this point in the history
  7. fix damage in librustc

    arielb1 committed Jun 8, 2016
    Configuration menu
    Copy the full SHA
    b2100cc View commit details
    Browse the repository at this point in the history
  8. fix stdtest

    arielb1 committed Jun 8, 2016
    Configuration menu
    Copy the full SHA
    a673ced View commit details
    Browse the repository at this point in the history
  9. fix tests

    arielb1 committed Jun 8, 2016
    Configuration menu
    Copy the full SHA
    5cf4139 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    fcabfa9 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    9b1abf5 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    f0174fc View commit details
    Browse the repository at this point in the history
  13. fix Cargo.lock

    arielb1 committed Jun 8, 2016
    Configuration menu
    Copy the full SHA
    2de6ea7 View commit details
    Browse the repository at this point in the history