1. 13 10月, 2015 2 次提交
  2. 12 10月, 2015 1 次提交
  3. 11 10月, 2015 1 次提交
  4. 10 10月, 2015 4 次提交
    • G
      Whitelisting PatWild for E0022. Fix #28822 · 55546362
      glendc 提交于
      55546362
    • B
      Set proper alignment on constants · 6ad079e3
      Björn Steinbrink 提交于
      For enum variants, the default alignment for a specific variant might be
      lower than the alignment of the enum type itself. In such cases we, for
      example, generate memcpy calls with an alignment that's higher than the
      alignment of the constant we copy from.
      
      To avoid that, we need to explicitly set the required alignment on
      constants.
      
      Fixes #28912.
      6ad079e3
    • B
      Prevent `/**/` from being parsed as a doc comment · c7fa52df
      Barosl Lee 提交于
      Previously, `/**/` was incorrectly regarded as a doc comment because it
      starts with `/**` and ends with `*/`. However, this caused an ICE
      because some code assumed that the length of a doc comment is at least
      5. This commit adds an additional check to `is_block_doc_comment` that
      tests the length of the input.
      
      Fixes #28844.
      c7fa52df
    • F
      Major revision to the dropck_legal_cycles test. · 098a7a07
      Felix S. Klock II 提交于
      1. Added big comment block explaining the test framework.
      
      2. Added tests exericising Rc and Arc. This was inspired by a comment
         from eefriedman on PR #28861.
      
      3. Made the cycle-detection not issue false-positives on acyclic dags.
      
         Doing this efficiently required revising the framework; instead of
         visiting all children (i.e. doing a traversal), now each test is
         responsible for supplying the path that will act as a witness to
         the cycle.
      
         Luckily for me, all of the pre-existing tests worked with a trivial
         path built from "always tke your first left", but new tests I added
         did require other input paths (i.e., "first turn right, then left".
      
         (The path representation is a bit-string and its branches are
          n-ary, not word phrases and binary branches as you might think
          from the outline above.)
      098a7a07
  5. 09 10月, 2015 7 次提交
  6. 08 10月, 2015 4 次提交
  7. 07 10月, 2015 4 次提交
  8. 06 10月, 2015 6 次提交
    • C
      Clean newlines · 3967e1c9
      Carlos Liam 提交于
      3967e1c9
    • F
      review comment: use RFC example for compile-fail/issue28498-reject-ex1.rs · 7a4743fa
      Felix S. Klock II 提交于
      (It is not *exactly* the text from the RFC, but the only thing it adds
      is a call to a no-op function that is just an attempt to make it clear
      where the potential for impl specialization comes from.)
      7a4743fa
    • F
      shorten URLs to placate `make tidy`. · 5708f44b
      Felix S. Klock II 提交于
      5708f44b
    • F
      compile-fail tests. · 83077bee
      Felix S. Klock II 提交于
      One just checks that we are feature-gating the UGEH attribute (as
      usual for attributes associated with unstable features).
      
      The other is adapted from the RFC 1238 text, except that it has been
      extended somewhat to actually *illustrate* the scenario that we are
      trying to prevent, namely observing the state of data, from safe code,
      after the destructor for that data has been executed.
      83077bee
    • F
      run-pass tests for RFC 1238. · eea299be
      Felix S. Klock II 提交于
      Illustrates cases that worked before and must continue to work, and a
      case that shows how to use the `unsafe_destructor_blind_to_params`
      attribute (aka "the UGEH attribute") to work around
      cannot-assume-parametricity.
      eea299be
    • F
      Add RFC 1238's `unsafe_destructor_blind_to_params` (UGEH) where needed. · d778e57b
      Felix S. Klock II 提交于
      I needed it in `RawVec`, `Vec`, and `TypedArena` for `rustc` to
      bootstrap; but of course that alone was not sufficient for `make
      check`.
      
      Later I added `unsafe_destructor_blind_to_params` to collections, in
      particular `LinkedList` and `RawTable` (the backing representation for
      `HashMap` and `HashSet`), to get the regression tests exercising
      cyclic structure from PR #27185 building.
      
      ----
      
      Note that the feature is `dropck_parametricity` (which is not the same
      as the attribute's name). We will almost certainly vary our strategy
      here in the future, so it makes some sense to have a not-as-ugly name
      for the feature gate. (The attribute name was deliberately selected to
      be ugly looking.)
      d778e57b
  9. 05 10月, 2015 1 次提交
    • J
      Fix LLVM assertion on out-of-bounds const slice index. · fd077800
      Jed Davis 提交于
      This turned up as part of #3170.  When constructing an `undef` value to
      return in the error case, we were trying to get the element type of the
      Rust-level value being indexed instead of the underlying array; when
      indexing a slice, that's not an array and the LLVM assertion failure
      reflects this.
      
      The regression test is a lightly altered copy of `const-array-oob.rs`.
      fd077800
  10. 04 10月, 2015 1 次提交
    • W
      Fix run-make/bare-outfile test · e3df5192
      William Throwe 提交于
      The reason this was not failing is fascinating.  The variable $(rustc)
      is empty, so the make recipe was expanded as " -o foo foo.rs".  make
      interpreted this as an instruction to run the command "o foo foo.rs"
      and ignore any failure that occurred, because it uses a leading '-' on
      a command to signal that behavior.
      e3df5192
  11. 03 10月, 2015 4 次提交
    • A
      use the correct subtyping order in a test · 2f23e171
      Ariel Ben-Yehuda 提交于
      also, ensure that callers are checked.
      2f23e171
    • A
      fix fallout · ce702072
      Ariel Ben-Yehuda 提交于
      looks like some mix of #18653 and `projection_must_outlive`, but
      that needs to be investigated further (crater run?)
      ce702072
    • A
      ensure that the types of methods are well-formed · 603a75c8
      Ariel Ben-Yehuda 提交于
      By RFC1214:
      Before calling a fn, we check that its argument and return types are WF. This check takes place after all higher-ranked lifetimes have been instantiated. Checking the argument types ensures that the implied bounds due to argument types are correct. Checking the return type ensures that the resulting type of the call is WF.
      
      The previous code only checked the trait-ref, which was not enough
      in several cases.
      
      As this is a soundness fix, it is a [breaking-change].
      
      Fixes #28609
      603a75c8
    • A
      rustc: Emit phony targets for inputs in dep-info · 17419622
      Alex Crichton 提交于
      This helps protect against files being deleted to ensure that `make` won't emit
      errors.
      
      Closes #28735
      17419622
  12. 02 10月, 2015 4 次提交
  13. 01 10月, 2015 1 次提交