1. 09 1月, 2018 2 次提交
    • K
      Rollup merge of #47233 - dotdash:cleanup_llvm, r=alexcrichton · 1cbbbc09
      kennytm 提交于
      Remove unused LLVM related code
      
      Ticks a few more boxes on #46437
      1cbbbc09
    • K
      Rollup merge of #47210 -... · 4a6f4409
      kennytm 提交于
      Rollup merge of #47210 - zackmdavis:the_3rd_of_2_hardest_problems_in_computer_science, r=QuietMisdreavus
      
      fix the doc-comment-decoration-trimming edge-case rustdoc ICE
      
      This `horizontal_trim` function strips the leading whitespace from
      doc-comments that have a left-asterisk-margin:
      
      ```
        /**
         * You know what I mean—
         *
         * comments like this!
         */
      ```
      
      The index of the column of asterisks is `i`, and if trimming is deemed
      possible, we slice each line from `i+1` to the end of the line. But if, in
      particular, `i` was 0 _and_ there was an empty line (as in the example
      given in the reporting issue), we ended up panicking trying to slice an
      empty string from 0+1 (== 1).
      
      Let's tighten our check to say that we can't trim when `i` is even the same
      as the length of the line, not just when it's greater. (Any such cases
      would panic trying to slice `line` from `line.len()+1`.)
      
      Resolves #47197.
      4a6f4409
  2. 08 1月, 2018 5 次提交
    • B
      Auto merge of #47208 - Manishearth:double-ended-searcher, r=pnkfelix · b5392f54
      bors 提交于
      Make double ended searchers use dependent fingers
      
      (fixes #47175)
      
      r? @burntsushi @alexcrichton
      
      needs uplift to beta
      b5392f54
    • B
      Auto merge of #47232 - keatinge:master, r=petrochenkov · 1b193de9
      bors 提交于
      Add help message for incorrect pattern syntax
      
      When I was getting started with rust I often made the mistake of using `||` instead of `|` to match multiple patterns and spent a long time staring at my code wondering what was wrong.
      
      for example:
      
      ```
      fn main() {
          let x = 1;
      
          match x {
              1 || 2 => println!("1 or 2"),
              _ => println!("Something else"),
          }
      }
      
      ```
      
      If you compile this with current rustc you will see
      
      ```
      error: expected one of `...`, `..=`, `..`, `=>`, `if`, or `|`, found `||`
       --> test.rs:5:11
        |
      5 |         1 || 2 => println!("1 or 2"),
        |          -^^ unexpected token
        |          |
        |          expected one of `...`, `..=`, `..`, `=>`, `if`, or `|` here
      
      error: aborting due to previous error
      ```
      
      With my proposed change it will show:
      ```
      error: unexpected token `||` after pattern
       --> test.rs:5:11
        |
      5 |         1 || 2 => println!("1 or 2"),
        |           ^^
        |
        = help: did you mean to use `|` to specify multiple patterns instead?
      
      error: aborting due to previous error
      ```
      1b193de9
    • B
      Auto merge of #47200 - BurntPizza:query-snatp, r=nikomatsakis · 795594cd
      bors 提交于
      Make normalize_and_test_predicates into a query
      
      From #44891.
      
      I'm not real solid on how `dep_graph` stuff works, but if a node is going to have a key (again, not sure how important that is), then the key needs to be `Copy`. So since `normalize_and_test_predicates` only had one out-of-module use, I changed that call site to use a new function, `substitute_normalize_and_test_predicates` which is the query and enables having the arguments be `Copy`. Hopefully this makes sense.
      
      r? @nikomatsakis
      and/or @michaelwoerister
      795594cd
    • B
      Auto merge of #47171 - estebank:numeric-literal-suggestion, r=nikomatsakis · a29461f3
      bors 提交于
      Provide suggestion when trying to use method on numeric literal
      
      New output:
      
      ```
      error[E0688]: can't call method `powi` on ambiguous numeric type `{float}`
        --> $DIR/method-on-ambiguous-numeric-type.rs:12:17
         |
      12 |     let x = 2.0.powi(2);
         |                 ^^^^
      help: you must specify a concrete type for this numeric value, like `f32`
         |
      12 |     let x = 2.0_f32.powi(2);
         |             ^^^^^^^
      ```
      
      Previous output:
      
      ```
      error[E0599]: no method named `powi` found for type `{float}` in the current scope
        --> src/main.rs:12:17
         |
      12 |     let x = 2.0.powi(2);
         |                 ^^^^
         |
         = help: items from traits can only be used if the trait is in scope
      help: the following trait is implemented but not in scope, perhaps add a `use` for it:
         |
      11 | use core::num::Float;
         |
      ```
      
      Fix #40985.
      a29461f3
    • B
      Auto merge of #47161 - MaloJaffre:compiler-docs-regression, r=alexcrichton · ee220dac
      bors 提交于
      Try to fix a perf regression by updating log
      
      Upgrade `log` to `0.4` in multiple crates ~and `cargo`~.
      Cc: #47154.
      ee220dac
  3. 07 1月, 2018 21 次提交
  4. 06 1月, 2018 12 次提交