- 06 2月, 2018 9 次提交
-
-
由 kennytm 提交于
Fix info about generic impls in AsMut docs This text was copy-pasted from the `AsRef` docs to `AsMut`, but needed some additional adjustments for correctness.
-
由 kennytm 提交于
Fix rustdoc ICE on macros defined within functions fixes #47639
-
由 kennytm 提交于
Stabilize use_nested_groups As requested in #44494. Documentation PRs already sent.
-
由 kennytm 提交于
Make wording around 0-cost casts more precise
-
由 kennytm 提交于
Update book This PR does two things: 1. update the book to include https://github.com/rust-lang/book/pull/1088 2. update to mdbook 0.1 Both of these things are big changes, so I want to land them now, well before the next branch, so we can kick the tires. ------------------------------ Locally, I'm seeing some weirdness around the reference and this: ![image](https://user-images.githubusercontent.com/27786/35411917-8dcbb31a-01e8-11e8-8c30-0bd280d93b9d.png) Putting this PR up so others can try and build and see if it reproduces for them.
-
由 kennytm 提交于
Add a regression test for #44415 This PR adds a regression test for issue #44415. Fixes #44415.
-
由 kennytm 提交于
Disallow mutable borrow to non-mut statics Closes #42344.
-
由 kennytm 提交于
add documentation from doc(include) to analysis data cc #44732 Currently save-analysis only loads docs from plain doc comments and doc attributes. Since `#[doc(include="filename.md")]` doesn't create a plain doc attribute when it loads the file, we need to be sure to pick up this info for the analysis data.
-
由 kennytm 提交于
Make inline assembly volatile if it has no outputs. Fixes #46026
-
- 05 2月, 2018 16 次提交
-
-
由 bors 提交于
Update clippy and miri submodule r? @Manishearth cc @kennytm I needed to touch the miri submodule's Cargo.toml to make sure that clippy gets the newest compiletest_rs. This will not fix miri, but since I touched the miri submodule, will this PR fail? miri is unfixable until #46882 is merged
-
由 John Kåre Alsaker 提交于
-
由 Oliver Schneider 提交于
-
由 Pietro Albini 提交于
-
由 bors 提交于
Fix overflow when performing drop check calculations in NLL Clearing out the infcx's region constraints after processing each type ends up interacting badly with normalizing associated types. This commit keeps all region constraints intact until the end of TypeLivenessGenerator.add_drop_live_constraint, ensuring that normalized types are able to re-use existing inference variables. Fixes #47589
-
由 bors 提交于
Fix ref-to-ptr coercions not working with NLL in certain cases Implicit coercions from references to pointers were lowered to slightly different Mir than explicit casts (e.g. 'foo as *mut T'). This resulted in certain uses of self-referential structs compiling correctly when an explicit cast was used, but not when the implicit coercion was used. To fix this, this commit adds an outer 'Use' expr when applying a raw-ptr-borrow adjustment. This makes the lowered Mir for coercions identical to that of explicit coercions, allowing the original code to compile regardless of how the raw ptr cast occurs. Fixes #47722
-
由 bors 提交于
Cleanup the shim code - We now write directly to `RETURN_PLACE` instead of creating intermediates - `tuple_like_shim` takes an iterator (used by #47867) - `tuple_like_shim` no longer relies on it being the first thing to create blocks, and uses relative block indexing in a cleaner way (necessary for #47867) - All the shim builders take `dest, src` arguments instead of hardcoding RETURN_PLACE r? @EddyB
-
由 bors 提交于
Rollup of 10 pull requests - Successful merges: #47862, #47877, #47896, #47912, #47947, #47958, #47978, #47996, #47999, #47892 - Failed merges:
-
由 steveklabnik 提交于
-
由 steveklabnik 提交于
and improve printing of errors
-
由 steveklabnik 提交于
-
由 Matt Brubeck 提交于
This text was copy-pasted from the `AsRef` docs to `AsMut`, but needed some additional adjustments for correctness.
-
由 kennytm 提交于
Turn `type_id` into a constant intrinsic https://github.com/rust-lang/rust/issues/27745 The method `get_type_id` in `Any` is intended to support reflection. It's currently unstable in favor of using an associated constant instead. This PR makes the `type_id` intrinsic a constant intrinsic, the same as `size_of` and `align_of`, allowing `TypeId::of` to be a `const fn`, which will allow using an associated constant in `Any`.
-
由 kennytm 提交于
Remove 'the this' in doc comments.
-
由 kennytm 提交于
Run the `run-make` tests last, so more tests run on Windows when `make` is unavailable
-
- 04 2月, 2018 15 次提交
-
-
由 kennytm 提交于
ui tests: diff from old (expected) to new (actual) instead of backwards. Previously `actual` was "old" and `expected` was "new" which resulted in `+` before `-`. AFAIK all diff tools put `-` before `+`, which made the previous behavior *very confusing*. r? @nikomatsakis
-
由 kennytm 提交于
Clarify shared file handler behavior of File::try_clone. Fixes https://github.com/rust-lang/rust/issues/46578.
-
由 kennytm 提交于
Stabilize feature(match_beginning_vert) With this feature stabilized, match expressions can optionally have a `|` at the beginning of each arm. Reference PR: rust-lang-nursery/reference#231 Closes #44101
-
由 kennytm 提交于
Use a range to identify SIGSEGV in stack guards Previously, the `guard::init()` and `guard::current()` functions were returning a `usize` address representing the top of the stack guard, respectively for the main thread and for spawned threads. The `SIGSEGV` handler on `unix` targets checked if a fault was within one page below that address, if so reporting it as a stack overflow. Now `unix` targets report a `Range<usize>` representing the guard memory, so it can cover arbitrary guard sizes. Non-`unix` targets which always return `None` for guards now do so with `Option<!>`, so they don't pay any overhead. For `linux-gnu` in particular, the previous guard upper-bound was `stackaddr + guardsize`, as the protected memory was *inside* the stack. This was a glibc bug, and starting from 2.27 they are moving the guard *past* the end of the stack. However, there's no simple way for us to know where the guard page actually lies, so now we declare it as the whole range of `stackaddr ± guardsize`, and any fault therein will be called a stack overflow. This fixes #47863.
-
由 kennytm 提交于
Rollup merge of #47896 - zackmdavis:and_the_case_of_the_necessary_unnecessary_parens, r=nikomatsakis decline to lint technically-unnecessary parens in function or method arguments inside of nested macros In #46980 ("in which the unused-parens lint..." (14982db2)), the unused-parens lint was made to check function and method arguments, which it previously did not (seemingly due to oversight rather than willful design). However, in #47775 and discussion thereon, user–developers of Geal/nom and graphql-rust/juniper reported that the lint was seemingly erroneously triggering on certain complex macros in those projects. While this doesn't seem like a bug in the lint in the particular strict sense that the expanded code would, in fact, contain unncecessary parentheses, it also doesn't seem like the sort of thing macro authors should have to think about: the spirit of the unused-parens lint is to prevent needless clutter in code, not to give macro authors extra heartache in the handling of token trees. We propose the expediency of declining to lint unused parentheses in function or method args inside of nested expansions: we believe that this should eliminate the petty, troublesome lint warnings reported in the issue, without forgoing the benefits of the lint in simpler macros. It seemed like too much duplicated code for the `Call` and `MethodCall` match arms to duplicate the nested-macro check in addition to each having their own `for` loop, so this occasioned a slight refactor so that the function and method cases could share code—hopefully the overall intent is at least no less clear to the gentle reader. This is concerning #47775.
-
由 kennytm 提交于
Do not ignore lifetime bounds in Copy impls cc #29149 r? @nikomatsakis
-
由 Jay Strict 提交于
-
由 bors 提交于
Do not enable ThinLTO on stable, beta, or nightly builds. Fixes #45444
-
由 John Kåre Alsaker 提交于
-
由 bors 提交于
Update RLS and Rustfmt r? @alexcrichton
-
由 Seiichi Uchida 提交于
This path was considered to be unreachable. However, `&mut` could potentially live inside `static`. For example, `static TAB: [&mut [u8]; 0] = [];`.
-
由 bors 提交于
rustc: prefer ParamEnvAnd and LayoutCx over tuples for LayoutOf. This PR provides `tcx.layout_of(param_env.and(ty))` as the idiomatic replacement for the existing `(tcx, param_env).layout_of(ty)` and removes fragile (coherence-wise) layout-related tuple impls. r? @nikomatsakis
-
由 Nick Cameron 提交于
-
由 Mark Simulacrum 提交于
Dist builds should always be as fast as we can make them, and since those run on CI we don't care quite as much for the build being somewhat slower. As such, we don't automatically enable ThinLTO on builds for the dist builders.
-