]> git.lizzy.rs Git - rust.git/log
rust.git
5 years agoextend query response to potentially contain fresh universes
Niko Matsakis [Thu, 27 Sep 2018 13:43:22 +0000 (09:43 -0400)]
extend query response to potentially contain fresh universes

The idea here is that an incoming query may refer to some universes,
and they query response may contain fresh universes that go beyond
those. When we instantiate the query response in the caller's scope,
therefore, we map those new universes into fresh universes for the
caller.

5 years agoallow canonicalized regions to carry universe and track max-universe
Niko Matsakis [Wed, 26 Sep 2018 16:35:24 +0000 (12:35 -0400)]
allow canonicalized regions to carry universe and track max-universe

But.. we don't really use it for anything right now.

5 years agoconvert placeholder region vids in NLL mode as we see them
Niko Matsakis [Mon, 1 Oct 2018 14:13:13 +0000 (10:13 -0400)]
convert placeholder region vids in NLL mode as we see them

5 years agomove `PlaceholderIndices` into `MirTypeckRegionConstraints` struct
Niko Matsakis [Fri, 28 Sep 2018 20:55:15 +0000 (16:55 -0400)]
move `PlaceholderIndices` into `MirTypeckRegionConstraints` struct

5 years agoAuto merge of #55053 - Emerentius:test_all_again, r=alexcrichton
bors [Sat, 27 Oct 2018 07:12:11 +0000 (07:12 +0000)]
Auto merge of #55053 - Emerentius:test_all_again, r=alexcrichton

Add option to run all tests, again

This is a repeat of https://github.com/rust-lang/rust/pull/53527, which had to be reverted to land https://github.com/rust-lang/rust/pull/54116. It will break clippy until `compiletest-rs` can be updated and I believe we're closing on a new release date, so this may need to be delayed again until after 1.30 is out (?)

Closes #50363 again

5 years agoAuto merge of #55274 - pnkfelix:issue-54570-proj-path-into-pats-with-type-take-2...
bors [Sat, 27 Oct 2018 00:39:11 +0000 (00:39 +0000)]
Auto merge of #55274 - pnkfelix:issue-54570-proj-path-into-pats-with-type-take-2, r=nikomatsakis

Handle bindings in substructure of patterns with type ascriptions

This attempts to follow the outline described by @nikomatsakis [here](https://github.com/rust-lang/rust/issues/47184#issuecomment-420041056). Its a bit more complicated than expected for two reasons:

 1. In general it handles sets of type ascriptions, because such ascriptions can be nested within patterns
 2.  It has a separate types in the HAIR, `PatternTypeProjections` and `PatternTypeProjection`, which are analogues to the corresponding types in the MIR.

The main reason I added the new HAIR types was because I am worried that the current implementation is inefficent, and asymptotically so: It makes copies of vectors as it descends the patterns, even when those accumulated vectors are never used.

Longer term, I would like to used a linked tree structure for the `PatternTypeProjections` and `PatternTypeProjection`, and save the construction of standalone vectors for the MIR types. I didn't want to block landing this on that hypoethetical revision; but I figured I could at least make the future change easier by differentiating between the two types now.

Oh, one more thing: This doesn't attempt to handle `ref x` (in terms of ensuring that any necessary types are ascribed to `x` in that scenario as well). We should open an issue to investigate supporting that as well. But I didn't want to block this PR on that future work.

Fix #54570

5 years agoadd user_ty.projs support to `AscribeUserType`.
Felix S. Klock II [Fri, 26 Oct 2018 12:00:07 +0000 (14:00 +0200)]
add user_ty.projs support to `AscribeUserType`.

5 years agoFurther foundational stuff on `ProjectionKind` before I add it to `AscribeUserType`.
Felix S. Klock II [Fri, 26 Oct 2018 11:32:45 +0000 (13:32 +0200)]
Further foundational stuff on `ProjectionKind` before I add it to `AscribeUserType`.

5 years agoAdd intern table for `List<ProjectionElem<'tcx, (), ()>>`.
Felix S. Klock II [Fri, 26 Oct 2018 09:28:40 +0000 (11:28 +0200)]
Add intern table for `List<ProjectionElem<'tcx, (), ()>>`.

Also added alias `ProjectionKind<'tcx>` for `ProjectionElem<'tcx, (), ()>`.

5 years agoAdd test for normalization during field-lookup on patterns with ascribed types.
Felix S. Klock II [Thu, 25 Oct 2018 13:45:41 +0000 (15:45 +0200)]
Add test for normalization during field-lookup on patterns with ascribed types.

As a drive-by, also added test analogous to existing
static_to_a_to_static_through_tuple, but now apply to a struct instead
of a tuple.

5 years agoregression test for ICE I encountered in my patch.
Felix S. Klock II [Tue, 23 Oct 2018 21:37:12 +0000 (23:37 +0200)]
regression test for ICE I encountered in my patch.

5 years agoUpdate mir-opt tests to reflect change to `AscribeUserType` to carry a `UserTypeProje...
Felix S. Klock II [Mon, 22 Oct 2018 22:59:39 +0000 (00:59 +0200)]
Update mir-opt tests to reflect change to `AscribeUserType` to carry a `UserTypeProjection`.

5 years agoAdd the actual chain of projections to `UserTypeProjection`.
Felix S. Klock II [Mon, 22 Oct 2018 20:50:10 +0000 (22:50 +0200)]
Add the actual chain of projections to `UserTypeProjection`.

Update the existing NLL `patterns.rs` test accordingly.

includes changes addressing review feedback:

 * Added example to docs for `UserTypeProjections` illustrating how we
   build up multiple projections when descending into a pattern with
   type ascriptions.

 * Adapted niko's suggested docs for `UserTypeProjection`.

 * Factored out `projection_ty` from more general `projection_ty_core`
   (as a drive-by, made its callback an `FnMut`, as I discovered later
   that I need that).

 * Add note to docs that `PlaceTy.field_ty(..)` does not normalize its result.

 * Normalize as we project out `field_ty`.

5 years agoCheckpoint: Added abstraction over collection of projections into user type.
Felix S. Klock II [Mon, 22 Oct 2018 12:23:44 +0000 (14:23 +0200)]
Checkpoint: Added abstraction over collection of projections into user type.

I did not think I would need this in the MIR, but in general local
decls are going to need to support this. (That, or we need to be able
define a least-upper-bound for a collection of types encountered via
the pattern compilation.)

5 years agoAuto merge of #54929 - csmoe:cfg_lint, r=petrochenkov
bors [Fri, 26 Oct 2018 21:46:13 +0000 (21:46 +0000)]
Auto merge of #54929 - csmoe:cfg_lint, r=petrochenkov

Suggest to remove prefix `b` in cfg attribute lint string

Closes #54926
r? @estebank

5 years agoAdded `mir::UserTypeProjection`, a stub for a structure that projects *into* a given...
Felix S. Klock II [Mon, 22 Oct 2018 09:58:06 +0000 (11:58 +0200)]
Added `mir::UserTypeProjection`, a stub for a structure that projects *into* a given UserTypeAnnotation.

(That is, it will pull out some component type held or referenced by
the type annotation.)

Note: this still needs to actually do projection itself. That comes in
a later commit

5 years agoRefactoring: added `PatternTypeAnnotation` wrapper around `UserTypeAnnotation` to...
Felix S. Klock II [Sun, 21 Oct 2018 19:52:38 +0000 (21:52 +0200)]
Refactoring: added `PatternTypeAnnotation` wrapper around `UserTypeAnnotation` to ease future changes.

5 years agorestrict scope of methods that are only called within mod tree of parent.
Felix S. Klock II [Fri, 19 Oct 2018 14:36:16 +0000 (16:36 +0200)]
restrict scope of methods that are only called within mod tree of parent.

5 years agoRemove `PlaceContext` from API of `mir::Visitor::visit_projection_elem`.
Felix S. Klock II [Wed, 17 Oct 2018 13:27:07 +0000 (15:27 +0200)]
Remove `PlaceContext` from API of `mir::Visitor::visit_projection_elem`.

It is unused, and would not make sense to maintain in the commits later in this PR.

5 years agoAuto merge of #55382 - kennytm:rollup, r=kennytm
bors [Fri, 26 Oct 2018 17:26:56 +0000 (17:26 +0000)]
Auto merge of #55382 - kennytm:rollup, r=kennytm

Rollup of 21 pull requests

Successful merges:

 - #54816 (Don't try to promote already promoted out temporaries)
 - #54824 (Cleanup rustdoc tests with `@!has` and `@!matches`)
 - #54921 (Add line numbers option to rustdoc)
 - #55167 (Add a "cheap" mode for `compute_missing_ctors`.)
 - #55258 (Fix Rustdoc ICE when checking blanket impls)
 - #55264 (Compile the libstd we distribute with -Ccodegen-unit=1)
 - #55271 (Unimplement ExactSizeIterator for MIR traversing iterators)
 - #55292 (Macro diagnostics tweaks)
 - #55298 (Point at macro definition when no rules expect token)
 - #55301 (List allowed tokens after macro fragments)
 - #55302 (Extend the impl_stable_hash_for! macro for miri.)
 - #55325 (Fix link to macros chapter)
 - #55343 (rustbuild: fix remap-debuginfo when building a release)
 - #55346 (Shrink `Statement`.)
 - #55358 (Remove redundant clone (2))
 - #55370 (Update mailmap for estebank)
 - #55375 (Typo fixes in configure_cmake comments)
 - #55378 (rustbuild: use configured linker to build boostrap)
 - #55379 (validity: assert that unions are non-empty)
 - #55383 (Use `SmallVec` for the queue in `coerce_unsized`.)
 - #55391 (bootstrap: clean up a few clippy findings)

5 years agoRollup merge of #55391 - matthiaskrgr:bootstrap_cleanup, r=oli-obk
kennytm [Fri, 26 Oct 2018 15:10:38 +0000 (23:10 +0800)]
Rollup merge of #55391 - matthiaskrgr:bootstrap_cleanup, r=oli-obk

bootstrap: clean up a few clippy findings

remove useless format!()s
remove redundant field names in a few struct initializations
pass slice instead of a vector to a function
use is_empty() instead of comparisons to .len()

No functional change intended.

5 years agoRollup merge of #55383 - nnethercote:coerce_unsized-SmallVec, r=davidtwco
kennytm [Fri, 26 Oct 2018 15:10:06 +0000 (23:10 +0800)]
Rollup merge of #55383 - nnethercote:coerce_unsized-SmallVec, r=davidtwco

Use `SmallVec` for the queue in `coerce_unsized`.

This reduces the number of allocations done for the `tuple-stress`
benchmark by 4%.

5 years agoRollup merge of #55264 - michaelwoerister:single-cgu-std, r=simulacrum
kennytm [Fri, 26 Oct 2018 15:09:31 +0000 (23:09 +0800)]
Rollup merge of #55264 - michaelwoerister:single-cgu-std, r=simulacrum

Compile the libstd we distribute with -Ccodegen-unit=1

This PR
 - adds the `single-codegen-unit-std` option to `config.toml` which allows for setting the CGU count for `libstd` and `libtest` independently of the one for the rest of the compiler, and
 - sets the new option to `true` for all dist jobs in CI.

Fixes #54872.

5 years agoRollup merge of #55379 - RalfJung:no-empty-union, r=oli-obk
kennytm [Fri, 26 Oct 2018 12:48:08 +0000 (20:48 +0800)]
Rollup merge of #55379 - RalfJung:no-empty-union, r=oli-obk

validity: assert that unions are non-empty

5 years agoRollup merge of #55378 - Keruspe:bootstrap-linker, r=petrochenkov
kennytm [Fri, 26 Oct 2018 10:25:17 +0000 (18:25 +0800)]
Rollup merge of #55378 - Keruspe:bootstrap-linker, r=petrochenkov

rustbuild: use configured linker to build boostrap

Currently, bootstrap uses it to compile everything, but x.py wasn't using it yet to build bootstrap itself.
This fixes the build for systems where the linker isn't called `cc`.

5 years agoRollup merge of #55375 - upstreaming:configure_cmake-comment-typo-fixes, r=alexcrichton
kennytm [Fri, 26 Oct 2018 10:25:16 +0000 (18:25 +0800)]
Rollup merge of #55375 - upstreaming:configure_cmake-comment-typo-fixes, r=alexcrichton

Typo fixes in configure_cmake comments

Signed-off-by: Eddy Petrișor <eddy.petrisor@gmail.com>
5 years agoRollup merge of #55370 - estebank:mailmap, r=alexcrichton
kennytm [Fri, 26 Oct 2018 10:25:15 +0000 (18:25 +0800)]
Rollup merge of #55370 - estebank:mailmap, r=alexcrichton

Update mailmap for estebank

5 years agoRollup merge of #55358 - sinkuu:redundant_clone2, r=estebank
kennytm [Fri, 26 Oct 2018 10:25:12 +0000 (18:25 +0800)]
Rollup merge of #55358 - sinkuu:redundant_clone2, r=estebank

Remove redundant clone (2)

5 years agoRollup merge of #55346 - nnethercote:shrink-StatementKind, r=nagisa
kennytm [Fri, 26 Oct 2018 10:25:11 +0000 (18:25 +0800)]
Rollup merge of #55346 - nnethercote:shrink-StatementKind, r=nagisa

Shrink `Statement`.

This commit reduces the size of `Statement` from 80 bytes to 56 bytes on
64-bit platforms, by boxing the `AscribeUserType` variant of
`StatementKind`.

This change reduces instruction counts on most benchmarks by 1--3%.

5 years agoRollup merge of #55343 - Keruspe:remap-debuginfo-release, r=alexcrichton
kennytm [Fri, 26 Oct 2018 10:25:10 +0000 (18:25 +0800)]
Rollup merge of #55343 - Keruspe:remap-debuginfo-release, r=alexcrichton

rustbuild: fix remap-debuginfo when building a release

Fallback to the release number as we can't get the git commit sha as we're not in a git repository.

Fixes #55341

5 years agoRollup merge of #55325 - rust-lang:steveklabnik-patch-1, r=frewsxcv
kennytm [Fri, 26 Oct 2018 10:25:08 +0000 (18:25 +0800)]
Rollup merge of #55325 - rust-lang:steveklabnik-patch-1, r=frewsxcv

Fix link to macros chapter

We're gonna link to nightly as this didn't make it into the corresponding stable.

r? @Mark-Simulacrum @Centril

5 years agoRollup merge of #55302 - goffrie:impl-stable-hash, r=varkor
kennytm [Fri, 26 Oct 2018 10:25:07 +0000 (18:25 +0800)]
Rollup merge of #55302 - goffrie:impl-stable-hash, r=varkor

Extend the impl_stable_hash_for! macro for miri.

Fixes #54075.

5 years agoRollup merge of #55301 - estebank:macro-allowed, r=petrochenkov
kennytm [Fri, 26 Oct 2018 10:25:06 +0000 (18:25 +0800)]
Rollup merge of #55301 - estebank:macro-allowed, r=petrochenkov

List allowed tokens after macro fragments

Fix #34069.

5 years agoRollup merge of #55298 - estebank:macro-def, r=pnkfelix
kennytm [Fri, 26 Oct 2018 10:25:05 +0000 (18:25 +0800)]
Rollup merge of #55298 - estebank:macro-def, r=pnkfelix

Point at macro definition when no rules expect token

Fix #35150.

5 years agoRollup merge of #55292 - estebank:macro-eof, r=pnkfelix
kennytm [Fri, 26 Oct 2018 10:25:03 +0000 (18:25 +0800)]
Rollup merge of #55292 - estebank:macro-eof, r=pnkfelix

Macro diagnostics tweaks

Fix #30128, fix #10951 by adding an appropriate span to the diagnostic.
Fix #26288 by suggesting adding semicolon to macro call.

5 years agoRollup merge of #55271 - sinkuu:traversal_iter, r=matthewjasper
kennytm [Fri, 26 Oct 2018 10:25:02 +0000 (18:25 +0800)]
Rollup merge of #55271 - sinkuu:traversal_iter, r=matthewjasper

Unimplement ExactSizeIterator for MIR traversing iterators

If `root` is not `START_BLOCK`, `basic_blocks().len() - visited` does not represent their exact size.

5 years agoAuto merge of #54626 - alexcrichton:dwarf-generics, r=michaelwoerister
bors [Fri, 26 Oct 2018 14:30:26 +0000 (14:30 +0000)]
Auto merge of #54626 - alexcrichton:dwarf-generics, r=michaelwoerister

rustc: Tweak filenames encoded into metadata

This commit is a fix for #54408 where on nightly right now whenever
generics are inlined the path name listed for the inlined function's
debuginfo is a relative path to the cwd, which surely doesn't exist!
Previously on beta/stable the debuginfo mentioned an absolute path which
still didn't exist, but more predictably didn't exist.

The change between stable/nightly is that nightly is now compiled with
`--remap-path-prefix` to give a deterministic prefix to all
rustc-generated paths in debuginfo. By using `--remap-path-prefix` the
previous logic would recognize that the cwd was remapped, causing the
original relative path name of the standard library to get emitted. If
`--remap-path-prefix` *wasn't* passed in then the logic would create an
absolute path name and then create a new source file entry.

The fix in this commit is to apply the "recreate the source file entry
with an absolute path" logic a bit more aggresively. If the source
file's name was remapped then we don't touch it, but otherwise we always
take the working dir (which may have been remapped) and then join it to
the file to ensure that we process all relative file names as well.

The end result is that the standard library should have an absolute path
for all file names in debuginfo (using our `--remap-path-prefix`
argument) as it does on stable after this patch.

Closes #54408

5 years agobootstrap: clean up a few clippy findings
Matthias Krüger [Fri, 26 Oct 2018 14:23:02 +0000 (16:23 +0200)]
bootstrap: clean up a few clippy findings

remove useless format!()s
remove redundant field names in a few struct initializations
pass slice instead of a vector to a function
use is_empty() instead of comparisons to .len()

No functional change intended.

5 years agoCI: Set codegen-units-std=1 for dist builds.
Michael Woerister [Tue, 23 Oct 2018 12:14:44 +0000 (14:14 +0200)]
CI: Set codegen-units-std=1 for dist builds.

5 years agoMake configure.py handle numeric arguments for `--set` a little better.
Michael Woerister [Tue, 23 Oct 2018 13:35:49 +0000 (15:35 +0200)]
Make configure.py handle numeric arguments for `--set` a little better.

5 years agobootstrap: Allow for build libstd to have its own codegen-unit setting.
Michael Woerister [Mon, 22 Oct 2018 14:39:36 +0000 (16:39 +0200)]
bootstrap: Allow for build libstd to have its own codegen-unit setting.

5 years agoAuto merge of #53821 - oli-obk:sanity_query, r=RalfJung
bors [Fri, 26 Oct 2018 11:05:00 +0000 (11:05 +0000)]
Auto merge of #53821 - oli-obk:sanity_query, r=RalfJung

Report const eval error inside the query

Functional changes: We no longer warn about bad constants embedded in unused types. This relied on being able to report just a warning, not a hard error on that case, which we cannot do any more now that error reporting is consistently centralized.

r? @RalfJung

fixes #53561

5 years agoRollup merge of #55258 - Aaron1011:fix/rustdoc-blanket, r=GuillaumeGomez
kennytm [Fri, 26 Oct 2018 10:24:59 +0000 (18:24 +0800)]
Rollup merge of #55258 - Aaron1011:fix/rustdoc-blanket, r=GuillaumeGomez

Fix Rustdoc ICE when checking blanket impls

Fixes #55001, #54744

Previously, SelectionContext would unconditionally cache the selection
result for an obligation. This worked fine for most users of
SelectionContext, but it caused an issue when used by Rustdoc's blanket
impl finder.

The issue occured when SelectionContext chose a ParamCandidate which
contained inference variables. Since inference variables can change
between calls to select(), it's not safe to cache the selection result -
the chosen candidate might not be applicable for future results, leading
to an ICE when we try to run confirmation.

This commit prevents SelectionContext from caching any ParamCandidate
that contains inference variables. This should always be completely
safe, as trait selection should never depend on a particular result
being cached.

I've also added some extra debug!() statements, which I found helpful in
tracking down this bug.

5 years agoRollup merge of #55167 - nnethercote:is_missing_ctors_empty, r=varkor
kennytm [Fri, 26 Oct 2018 10:24:58 +0000 (18:24 +0800)]
Rollup merge of #55167 - nnethercote:is_missing_ctors_empty, r=varkor

Add a "cheap" mode for `compute_missing_ctors`.

`compute_missing_ctors` produces a vector. It is called a lot, but the
vector is almost always only checked for emptiness.

This commit introduces a specialized variant of `compute_missing_ctors`
(called `is_missing_ctors_empty`) that determines if the resulting set
would be empty, and changes the callsite so that `compute_missing_ctors`
is only called in the rare cases where it is needed. The code
duplication is unfortunate but I can't see a better way to do it.

This change reduces instruction counts for several benchmarks up to 2%.

r? @varkor

5 years agoRollup merge of #54921 - GuillaumeGomez:line-numbers, r=QuietMisdreavus
kennytm [Fri, 26 Oct 2018 10:24:57 +0000 (18:24 +0800)]
Rollup merge of #54921 - GuillaumeGomez:line-numbers, r=QuietMisdreavus

Add line numbers option to rustdoc

Fixes #22878.

r? @QuietMisdreavus

5 years agoRollup merge of #54824 - Munksgaard:fix-49713, r=QuietMisdreavus
kennytm [Fri, 26 Oct 2018 10:24:55 +0000 (18:24 +0800)]
Rollup merge of #54824 - Munksgaard:fix-49713, r=QuietMisdreavus

Cleanup rustdoc tests with `@!has` and `@!matches`

Fixes #49713

Here's a _long_ list of all the places that include `@!has`. I have marked the ones I have looked at so far.

 - [x] search-index.rs:        fn priv_method() {} // @!has - priv_method
 - [x] search-index.rs:        fn trait_method(&self) {} // @!has - priv_method
 - [x] search-index.rs:    // @!has search-index.js Target
 - [x] short-dockblock.rs:// @!has foo/index.html '//*[@class="docblock-short"]/p/h1' 'fooo'
 - [x] short-dockblock.rs:// @!has foo/index.html '//*[@class="docblock-short"]/p/h2' 'mooood'
 - [x] keyword.rs:// @!has foo/index.html '//a/@href' 'foo/index.html'
 - [x] keyword.rs:// @!has foo/foo/index.html
 - [x] keyword.rs:// @!has-dir foo/foo
 - [x] issue-46380-2.rs:// @!has - '//*[@class="impl"]' 'impl PublicTrait<PrivateStruct> for PublicStruct'
 - [x] escape-rust-expr.rs:// @!has escape_rust_expr/constant.CONST_S.html '//pre[@class="rust const"]' '"<script>"'
 - [x] issue-33069.rs:// @!has - '//code' 'impl Bar for Foo'
 - [x] playground-empty.rs:// @!has foo/index.html '//a[@class="test-arrow"]' "Run"
 - [x] issue-34473.rs:// @!has - SomeTypeWithLongName
 - [x] issue-34473.rs:// @!has - SomeTypeWithLongName
 - [x] issue-34473.rs:// @!has foo/struct.SomeTypeWithLongName.html
 - [x] issue-29584.rs:// @!has - 'impl Bar for'
 - [x] hidden-line.rs:// @!has hidden_line/fn.foo.html invisible
 - [x] manual_impl.rs:// @!has - '//*[@class="docblock"]' 'Docs associated with the trait a_method definition.'
 - [x] manual_impl.rs:// @!has - '//*[@class="docblock"]' 'There is another line'
 - [x] manual_impl.rs:// @!has - '//*[@class="docblock"]' 'Docs associated with the trait a_method definition.'
 - [x] manual_impl.rs:// @!has - '//*[@class="docblock"]' 'Docs associated with the trait c_method definition.'
 - [x] issue-19190-2.rs:// @!has - '//*[@id="method.new"]' 'fn new() -> String'
 - [x] unneeded-trait-implementations-title.rs:// @!has foo/struct.Bar.html '//*[@id="implementations"]'
 - [x] masked.rs:// @!has 'search-index.js' 'masked_method'
 - [x] masked.rs:// @!has 'foo/struct.String.html' 'MaskedTrait'
 - [x] masked.rs:// @!has 'foo/struct.String.html' 'masked_method'
 - [x] masked.rs:// @!has 'foo/trait.Clone.html' 'MaskedStruct'
 - [x] masked.rs:// @!has 'foo/struct.MyStruct.html' 'MaskedTrait'
 - [x] masked.rs:// @!has 'foo/struct.MyStruct.html' 'masked_method'
 - [x] masked.rs:// @!has 'foo/trait.MyTrait.html' 'MaskedStruct'
 - [x] redirect.rs:// @!has - '//code/a' 'Qux'
 - [x] issue-43701.rs:// @!has implementors/core/clone/trait.Clone.js
 - [x] union.rs:    // @!has - //pre "b: u16"
 - [x] prim-title.rs:// @!has - '//head/title' 'foo'
 - [x] empty-section.rs:// @!has - '//*[@class="synthetic-implementations"]' 'Auto Trait Implementations'
 - [x] traits-in-bodies-private.rs:// @!has - '//code' 'impl HiddenTrait for SomeStruct'
 - [x] playground-none.rs:// @!has foo/index.html '//a[@class="test-arrow"]' "Run"
 - [x] issue-34025.rs:// @!has 'foo/sys/index.html'
 - [x] issue-34025.rs:// @!has 'foo/sys/sidebar-items.js'
 - [x] issue-34025.rs:        // @!has 'foo/sys/fn.foo.html'
 - [x] issue-23812.rs:// @!has - '/// Outer comment'
 - [x] issue-23812.rs:// @!has - '//! Inner comment'
 - [x] issue-23812.rs:// @!has - '/** Outer block comment */'
 - [x] issue-23812.rs:// @!has - '/*! Inner block comment */'
 - [x] pub-use-extern-macros.rs:// @!has pub_use_extern_macros/index.html '//code' 'pub use macros::bar;'
 - [x] pub-use-extern-macros.rs:// @!has pub_use_extern_macros/index.html '//code' 'pub use macros::baz;'
 - [x] pub-use-extern-macros.rs:// @!has pub_use_extern_macros/macro.quux.html
 - [x] pub-use-extern-macros.rs:// @!has pub_use_extern_macros/index.html '//code' 'pub use macros::quux;'
 - [x] issue-26606.rs:// @!has - '//a/@href' '../src/'
 - [x] foreigntype-reexport.rs:// @!has foreigntype_reexport/foreigntype.X4.html
 - [x] foreigntype-reexport.rs:// @!has foreigntype_reexport/index.html '//a[@class="foreigntype"]' 'X4'
 - [x] issue-31899.rs:// @!has - 'rust rust-example-rendered'
 - [x] issue-31899.rs:// @!has - 'use ndarray::arr2'
 - [x] issue-31899.rs:// @!has - 'prohibited'
 - [x] hidden-trait-struct-impls.rs:// @!has foo/struct.Bar.html '//*[@id="impl-Foo"]' 'impl Foo for Bar'
 - [x] hidden-trait-struct-impls.rs:// @!has foo/struct.Bar.html '//*[@id="impl-Dark"]' 'impl Dark for Bar'
 - [x] hidden-trait-struct-impls.rs:// @!has foo/trait.Bam.html '//*[@id="implementors-list"]' 'impl Bam for Hidden'
 - [x] hidden-impls.rs:// @!has - 'Foo'
 - [x] hidden-impls.rs:// @!has - 'Foo'
 - [x] module-impls.rs:// @!has foo/index.html 'Implementations'
 - [x] issue-35169.rs:// @!has - '//*[@id="by_mut_ref.v"]' 'fn by_mut_ref(&mut self)'
 - [x] issue-35169.rs:// @!has - '//*[@id="method.by_mut_ref"]' 'fn by_mut_ref(&mut self)'
 - [x] issue-35169.rs:// @!has - '//*[@id="by_explicit_mut_ref.v"]' 'fn by_explicit_mut_ref(self: &mut Foo)'
 - [x] issue-35169.rs:// @!has - '//*[@id="method.by_explicit_mut_ref"]' 'fn by_explicit_mut_ref(self: &mut Foo)'
 - [x] issue-35169.rs:// @!has - '//*[@id="by_explicit_box.v"]' 'fn by_explicit_box(self: Box<Foo>)'
 - [x] issue-35169.rs:// @!has - '//*[@id="method.by_explicit_box"]' 'fn by_explicit_box(self: Box<Foo>)'
 - [x] issue-35169.rs:// @!has - '//*[@id="by_explicit_self_box.v"]' 'fn by_explicit_self_box(self: Box<Self>)'
 - [x] issue-35169.rs:// @!has - '//*[@id="method.by_explicit_self_box"]' 'fn by_explicit_self_box(self: Box<Self>)'
 - [x] issue-35169.rs:// @!has - '//*[@id="static_foo.v"]' 'fn static_foo()'
 - [x] issue-35169.rs:// @!has - '//*[@id="method.static_foo"]' 'fn static_foo()'
 - [x] extern-links.rs:// @!has foo/index.html '//a' 'extern_links'
 - [x] extern-links.rs:// @!has foo/index.html '//a' 'Foo'
 - [x] extern-links.rs:    // @!has foo/hidden/extern_links/index.html
 - [x] extern-links.rs:    // @!has foo/hidden/extern_links/struct.Foo.html
 - [x] issue-33178-1.rs:// @!has - //a/@title empty
 - [x] issue-33178-1.rs:// @!has - //a/@title variant_struct
 - [x] issue-47038.rs:// @!has - '//*[@id="macros"]' 'Macros'
 - [x] issue-47038.rs:// @!has - '//a/@href' 'macro.vec.html'
 - [x] issue-47038.rs:// @!has 'foo/macro.vec.html'
 - [x] issue-46766.rs:// @!has foo/index.html '//a/@href' './Enum/index.html'
 - [x] issue-32395.rs:// @!has - 'pub qux'
 - [x] issue-32395.rs:// @!has - 'pub Bar'
 - [x] issue-32395.rs:// @!has - 'pub qux'
 - [x] issue-32395.rs:// @!has - 'pub Bar'
 - [x] hidden-methods.rs:// @!has - 'Methods'
 - [x] hidden-methods.rs:// @!has - 'impl Foo'
 - [x] hidden-methods.rs:// @!has - 'this_should_be_hidden'
 - [x] hidden-methods.rs:// @!has - 'Methods'
 - [x] hidden-methods.rs:// @!has - 'impl Bar'
 - [x] hidden-methods.rs:// @!has - 'this_should_be_hidden'
 - [x] structfields.rs:    // @!has - //pre "b: ()"
 - [x] structfields.rs:    // @!has - //pre "c: usize"
 - [x] structfields.rs:    // @!has - //pre "// some fields omitted"
 - [x] structfields.rs:        // @!has - //pre "b: ()"
 - [x] issue-46767.rs:// @!has foo/index.html '//a/@href' './private/index.html'
 - [x] assoc-consts.rs:    // @!has - FOO_HIDDEN
 - [x] assoc-consts.rs:    // @!has - FOO_HIDDEN
 - [x] assoc-consts.rs:    // @!has assoc_consts/struct.Bar.html 'BAR_PRIVATE'
 - [x] assoc-consts.rs:    // @!has assoc_consts/struct.Bar.html 'BAR_HIDDEN'
 - [x] issue-53689.rs:// @!has - 'MyStruct'
 - [x] search-index-summaries.rs:// @!has - 'www.example.com'
 - [x] search-index-summaries.rs:// @!has - 'More Foo.'
 - [x] impl-everywhere.rs:// @!has foo/fn.foo.html '//section[@id="main"]//pre' "x: &\'x impl Foo"
 - [x] impl-everywhere.rs:// @!has foo/fn.foo.html '//section[@id="main"]//pre' "-> &\'x impl Foo {"
 - [x] impl-everywhere.rs:// @!has foo/fn.foo2.html '//section[@id="main"]//pre' "x: &\'x impl Foo"
 - [x] impl-everywhere.rs:// @!has foo/fn.foo2.html '//section[@id="main"]//pre' '-> impl Foo2 {'
 - [x] impl-everywhere.rs:// @!has foo/fn.foo_foo.html '//section[@id="main"]//pre' '-> impl Foo + Foo2 {'
 - [x] impl-everywhere.rs:// @!has foo/fn.foo2.html '//section[@id="main"]//pre' "x: &'x (impl Foo + Foo2)"
 - [x] issue-19190.rs:// @!has - '//*[@id="static_foo.v"]' 'fn static_foo()'
 - [x] issue-19190.rs:// @!has - '//*[@id="method.static_foo"]' 'fn static_foo()'
 - [x] deprecated-impls.rs:    // @!has - 'fn_def_def_with_doc full'
 - [x] deprecated-impls.rs:    // @!has - 'fn_empty_with_doc full'
 - [x] deprecated-impls.rs:    // @!has - 'fn_def_with full'
 - [x] deprecated-impls.rs:    // @!has - 'fn_def_def_with_doc full'
 - [x] issue-19190-3.rs:// @!has - '//*[@id="method.new"]' 'fn new() -> String'
 - [x] issue-19190-3.rs:// @!has - '//*[@id="method.static_baz"]' 'fn static_baz()'
 - [x] issue-19190-3.rs:// @!has - '//*[@id="method.static_baz"]' 'fn static_baz()'
 - [x] sidebar-items.rs:// @!has - '//*[@class="sidebar-links"]/a' 'waza'
 - [x] sidebar-items.rs:// @!has - '//*[@class="sidebar-links"]/a' 'waza'
 - [x] issue-27104.rs:// @!has - 'extern crate std'
 - [x] issue-27104.rs:// @!has - 'use std::prelude::'
 - [x] issue-13698.rs:// @!has issue_13698/struct.Foo.html '//*[@id="method.foo"]' 'fn foo'
 - [x] issue-13698.rs:// @!has issue_13698/struct.Foo.html '//*[@id="method.foo"]' 'fn bar'
 - [x] issue-41783.rs:// @!has - 'space'
 - [x] issue-41783.rs:// @!has - 'comment'
 - [x] trait-self-link.rs:// @!has trait_self_link/trait.Foo.html //a/@href ../trait_self_link/trait.Foo.html
 - [x] generic-impl.rs:// @!has foo/struct.Bar.html '//h3[@id="impl-ToString"]//code' 'impl<T> ToString for T'
 - [x] all.rs:// @!has foo/all.html 'private_module'
 - [x] issue-35169-2.rs:// @!has - '//*[@id="by_explicit_box.v"]' 'fn by_explicit_box(self: Box<Foo>)'
 - [x] issue-35169-2.rs:// @!has - '//*[@id="method.by_explicit_box"]' 'fn by_explicit_box(self: Box<Foo>)'
 - [x] issue-35169-2.rs:// @!has - '//*[@id="by_explicit_self_box.v"]' 'fn by_explicit_self_box(self: Box<Self>)'
 - [x] issue-35169-2.rs:// @!has - '//*[@id="method.by_explicit_self_box"]' 'fn by_explicit_self_box(self: Box<Self>)'
 - [x] issue-35169-2.rs:// @!has - '//*[@id="static_foo.v"]' 'fn static_foo()'
 - [x] issue-35169-2.rs:// @!has - '//*[@id="method.static_foo"]' 'fn static_foo()'
 - [x] doc-cfg.rs:// @!has - '//*[@id="main"]/*[@class="stability"]/*[@class="stab portability"]' ''
 - [x] inline_local/glob-private.rs:// @!has - "mod1"
 - [x] inline_local/glob-private.rs:// @!has - "Mod1Private"
 - [x] inline_local/glob-private.rs:// @!has - "mod2"
 - [x] inline_local/glob-private.rs:// @!has - "Mod2Private"
 - [x] inline_local/glob-private.rs:// @!has foo/struct.Mod1Private.html
 - [x] inline_local/glob-private.rs:// @!has foo/struct.Mod2Private.html
 - [x] inline_local/glob-private.rs:// @!has foo/mod1/index.html
 - [x] inline_local/glob-private.rs:// @!has foo/mod1/struct.Mod1Private.html
 - [x] inline_local/glob-private.rs:// @!has foo/mod1/struct.Mod2Public.html
 - [x] inline_local/glob-private.rs:// @!has foo/mod1/struct.Mod2Private.html
 - [x] inline_local/glob-private.rs:// @!has foo/mod1/mod2/index.html
 - [x] inline_local/glob-private.rs:// @!has foo/mod1/mod2/struct.Mod2Private.html
 - [x] inline_local/glob-private.rs:// @!has-dir foo/mod2
 - [x] inline_local/glob-private.rs:// @!has foo/mod2/index.html
 - [x] inline_local/glob-private.rs:// @!has foo/mod2/struct.Mod2Public.html
 - [x] inline_local/glob-private.rs:// @!has foo/mod2/struct.Mod2Private.html
 - [x] inline_local/hidden-use.rs:// @!has - 'private'
 - [x] inline_local/hidden-use.rs:// @!has - 'Foo'
 - [x] inline_local/hidden-use.rs:// @!has hidden_use/struct.Foo.html
 - [x] inline_local/glob-extern-no-defaults.rs:// @!has - "private_fn"
 - [x] inline_local/glob-extern-no-defaults.rs:// @!has foo/fn.private_fn.html
 - [x] inline_local/issue-32343.rs:// @!has issue_32343/struct.Foo.html
 - [x] inline_local/issue-32343.rs:// @!has - '//code/a' 'Foo'
 - [x] inline_local/issue-32343.rs:// @!has issue_32343/struct.Bar.html
 - [x] inline_local/glob-private-no-defaults.rs:// @!has - "Mod1Private"
 - [x] inline_local/glob-private-no-defaults.rs:// @!has - "mod2"
 - [x] inline_local/glob-private-no-defaults.rs:// @!has - "Mod2Private"
 - [x] inline_local/glob-private-no-defaults.rs:// @!has foo/struct.Mod1Private.html
 - [x] inline_local/glob-private-no-defaults.rs:// @!has foo/struct.Mod2Private.html
 - [x] inline_local/glob-private-no-defaults.rs:// @!has - "Mod2Public"
 - [x] inline_local/glob-private-no-defaults.rs:// @!has - "Mod2Private"
 - [x] inline_local/glob-private-no-defaults.rs:// @!has foo/mod1/struct.Mod2Public.html
 - [x] inline_local/glob-private-no-defaults.rs:// @!has foo/mod1/struct.Mod2Private.html
 - [x] inline_local/glob-private-no-defaults.rs:// @!has foo/mod2/index.html
 - [x] inline_local/glob-private-no-defaults.rs:// @!has foo/mod2/struct.Mod2Public.html
 - [x] inline_local/glob-private-no-defaults.rs:// @!has foo/mod2/struct.Mod2Private.html
 - [x] inline_local/glob-extern.rs:// @!has - "mod1"
 - [x] inline_local/glob-extern.rs:// @!has - "private_fn"
 - [x] inline_local/glob-extern.rs:// @!has foo/fn.private_fn.html
 - [x] inline_local/glob-extern.rs:// @!has foo/mod1/index.html
 - [x] inline_local/glob-extern.rs:// @!has foo/mod1/fn.private_fn.html
 - [x] inline_local/please_inline.rs:    // @!has - 'pub use foo::'
 - [x] inline_local/please_inline.rs:    // @!has please_inline/b/struct.Foo.html
 - [x] inline_cross/hidden-use.rs:// @!has - 'rustdoc_hidden'
 - [x] inline_cross/hidden-use.rs:// @!has - 'Bar'
 - [x] inline_cross/hidden-use.rs:// @!has hidden_use/struct.Bar.html
 - [x] inline_cross/inline_hidden.rs:// @!has - '//a/@title' 'Foo'
 - [x] inline_cross/assoc-items.rs:// @!has - 'PrivateConst'
 - [x] inline_cross/assoc-items.rs:// @!has - 'private_method'
 - [x] inline_cross/cross-glob.rs:// @!has cross_glob/index.html '//code' 'pub use inner::*;'
 - [x] inline_cross/macro-vis.rs:// @!has - '//pre' 'some_macro'
 - [x] inline_cross/macro-vis.rs:// @!has macro_vis/macro.other_macro.html
 - [x] inline_cross/macro-vis.rs:// @!has macro_vis/index.html '//a/@href' 'macro.other_macro.html'
 - [x] inline_cross/macro-vis.rs:// @!has - '//code' 'pub use qwop::other_macro;'
 - [x] inline_cross/macro-vis.rs:// @!has macro_vis/macro.super_macro.html
 - [x] inline_cross/issue-31948.rs:// @!has - '//*[@class="impl"]//code' 'Bar for'
 - [x] inline_cross/issue-31948.rs:// @!has - '//*[@class="impl"]//code' 'Qux for'
 - [x] inline_cross/issue-31948.rs:// @!has - '//code' 'for Wibble'
 - [x] inline_cross/issue-31948.rs:// @!has - '//code' 'for Wobble'
 - [x] inline_cross/issue-31948.rs:// @!has - '//code' 'for Wibble'
 - [x] inline_cross/issue-31948.rs:// @!has - '//code' 'for Wobble'
 - [x] inline_cross/issue-31948.rs:// @!has issue_31948/trait.Bar.html
 - [x] inline_cross/issue-31948.rs:// @!has issue_31948/trait.Qux.html
 - [x] inline_cross/issue-31948.rs:// @!has issue_31948/struct.Wibble.html
 - [x] inline_cross/issue-31948.rs:// @!has issue_31948/struct.Wobble.html
 - [x] inline_cross/issue-31948-1.rs:// @!has - '//*[@class="impl"]//code' 'Bar for'
 - [x] inline_cross/issue-31948-1.rs:// @!has - '//*[@class="impl"]//code' 'Qux for'
 - [x] inline_cross/issue-31948-1.rs:// @!has - '//code' 'for Wibble'
 - [x] inline_cross/issue-31948-1.rs:// @!has - '//code' 'for Wibble'
 - [x] inline_cross/issue-31948-1.rs:// @!has issue_31948_1/trait.Bar.html
 - [x] inline_cross/issue-31948-1.rs:// @!has issue_31948_1/trait.Qux.html
 - [x] inline_cross/issue-28480.rs:// @!has -  '//a/@title' 'Hidden'
 - [x] inline_cross/issue-28480.rs:// @!has -  '//a/@title' 'Hidden'
 - [x] inline_cross/issue-31948-2.rs:// @!has - '//*[@class="impl"]//code' 'Bar for'
 - [x] inline_cross/issue-31948-2.rs:// @!has issue_31948_2/trait.Bar.html
 - [x] inline_cross/issue-31948-2.rs:// @!has issue_31948_2/trait.Woof.html
 - [x] inline_cross/issue-31948-2.rs:// @!has issue_31948_2/trait.Bark.html

It doesn't look like `@!matches` is used anywhere.

5 years agoRollup merge of #54816 - oli-obk:double_promotion, r=alexreg
kennytm [Fri, 26 Oct 2018 10:24:54 +0000 (18:24 +0800)]
Rollup merge of #54816 - oli-obk:double_promotion, r=alexreg

Don't try to promote already promoted out temporaries

fixes #53201

r? @eddyb

5 years agovalidity: assert that unions are non-empty
Ralf Jung [Fri, 26 Oct 2018 08:35:09 +0000 (10:35 +0200)]
validity: assert that unions are non-empty

5 years agoUse `SmallVec` for the queue in `coerce_unsized`.
Nicholas Nethercote [Fri, 26 Oct 2018 08:33:51 +0000 (19:33 +1100)]
Use `SmallVec` for the queue in `coerce_unsized`.

This reduces the number of allocations done for the `tuple-stress`
benchmark by 4%.

5 years agorustbuild: use configured linker to build boostrap
Marc-Antoine Perennou [Fri, 26 Oct 2018 08:18:48 +0000 (10:18 +0200)]
rustbuild: use configured linker to build boostrap

Signed-off-by: Marc-Antoine Perennou <Marc-Antoine@Perennou.com>
5 years agoExtend the impl_stable_hash_for! macro for miri.
Geoffry Song [Wed, 24 Oct 2018 07:30:27 +0000 (00:30 -0700)]
Extend the impl_stable_hash_for! macro for miri.

5 years agoTypo fixes in configure_cmake comments
Eddy Petrișor [Fri, 26 Oct 2018 05:54:57 +0000 (08:54 +0300)]
Typo fixes in configure_cmake comments

Signed-off-by: Eddy Petrișor <eddy.petrisor@gmail.com>
5 years agoRemove redundant clone
Shotaro Yamada [Thu, 25 Oct 2018 18:11:11 +0000 (03:11 +0900)]
Remove redundant clone

5 years agoAuto merge of #55362 - ehuss:releases-cargo-new-edition, r=Mark-Simulacrum
bors [Fri, 26 Oct 2018 02:58:28 +0000 (02:58 +0000)]
Auto merge of #55362 - ehuss:releases-cargo-new-edition, r=Mark-Simulacrum

Remove `cargo new --edition` from release notes.

This was removed at the last minute (#55315, https://github.com/rust-lang/cargo/pull/6216).
Apologies for not catching this.

5 years agoUpdate mailmap for estebank
Esteban Küber [Fri, 26 Oct 2018 00:10:34 +0000 (17:10 -0700)]
Update mailmap for estebank

5 years agoAuto merge of #54145 - nrc:save-path-segments, r=petrochenkov
bors [Fri, 26 Oct 2018 00:04:29 +0000 (00:04 +0000)]
Auto merge of #54145 - nrc:save-path-segments, r=petrochenkov

Keep resolved defs in path prefixes and emit them in save-analysis

Closes https://github.com/nrc/rls-analysis/issues/109

r? @eddyb or @petrochenkov

5 years agoShrink `Statement`.
Nicholas Nethercote [Thu, 25 Oct 2018 09:17:39 +0000 (20:17 +1100)]
Shrink `Statement`.

This commit reduces the size of `Statement` from 80 bytes to 56 bytes on
64-bit platforms, by boxing the `AscribeUserType` variant of
`StatementKind`.

This change reduces instruction counts on most benchmarks by 1--3%.

5 years agoRemove `cargo new --edition` from release notes.
Eric Huss [Thu, 25 Oct 2018 20:57:56 +0000 (13:57 -0700)]
Remove `cargo new --edition` from release notes.

5 years agomore reviewer changes
Nick Cameron [Thu, 25 Oct 2018 02:23:45 +0000 (15:23 +1300)]
more reviewer changes

5 years agoFix tests and assertions; add some comments
Nick Cameron [Thu, 11 Oct 2018 08:15:18 +0000 (21:15 +1300)]
Fix tests and assertions; add some comments

5 years agorebasing and reviewer changes
Nick Cameron [Wed, 12 Sep 2018 03:21:50 +0000 (15:21 +1200)]
rebasing and reviewer changes

Primarily refactoring `(Ident, Option<NodeId>)` to `Segment`

5 years agosave-analysis: handle missing field names
Nick Cameron [Wed, 12 Sep 2018 02:05:08 +0000 (14:05 +1200)]
save-analysis: handle missing field names

FIxes https://github.com/rust-lang-nursery/rls/issues/1031

5 years agoFix tests and rustdoc
Nick Cameron [Wed, 12 Sep 2018 01:44:22 +0000 (13:44 +1200)]
Fix tests and rustdoc

5 years agodump refs for path segments in save-analysis
Nick Cameron [Tue, 11 Sep 2018 03:08:47 +0000 (15:08 +1200)]
dump refs for path segments in save-analysis

Requires adding path segments to the hir map

5 years agodump data for prefix path segments
Nick Cameron [Mon, 10 Sep 2018 03:26:47 +0000 (15:26 +1200)]
dump data for prefix path segments

5 years agosave-analysis: remove hacky, unnecessary code now that we have spans for every ident
Nick Cameron [Mon, 10 Sep 2018 00:54:36 +0000 (12:54 +1200)]
save-analysis: remove hacky, unnecessary code now that we have spans for every ident

5 years agoStore a resolved def on hir::PathSegment
Nick Cameron [Thu, 6 Sep 2018 07:24:33 +0000 (19:24 +1200)]
Store a resolved def on hir::PathSegment

5 years agoGive each PathSegment a NodeId
Nick Cameron [Fri, 31 Aug 2018 00:01:26 +0000 (12:01 +1200)]
Give each PathSegment a NodeId

5 years agoAuto merge of #54490 - wesleywiser:rewrite_it_in_mir, r=oli-obk
bors [Thu, 25 Oct 2018 20:40:31 +0000 (20:40 +0000)]
Auto merge of #54490 - wesleywiser:rewrite_it_in_mir, r=oli-obk

Rewrite the `UnconditionalRecursion` lint to use MIR

Part of #51002

r? @eddyb

5 years agoClear up nonpromotable const fn call qualification
Oliver Scherer [Thu, 25 Oct 2018 19:18:22 +0000 (21:18 +0200)]
Clear up nonpromotable const fn call qualification

5 years agoGrammar nit
Oliver Scherer [Thu, 25 Oct 2018 19:14:25 +0000 (21:14 +0200)]
Grammar nit

5 years agoList allowed tokens after macro fragments
Esteban Küber [Wed, 24 Oct 2018 04:37:32 +0000 (21:37 -0700)]
List allowed tokens after macro fragments

5 years agoClarify exclusion comment further
Oliver Scherer [Thu, 25 Oct 2018 17:39:01 +0000 (19:39 +0200)]
Clarify exclusion comment further

5 years agoExplain why we can encounter a `Goto` terminator that we want to promote
Oliver Scherer [Thu, 25 Oct 2018 17:37:07 +0000 (19:37 +0200)]
Explain why we can encounter a `Goto` terminator that we want to promote

5 years agoExplain a comment in more detail
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer [Thu, 25 Oct 2018 16:28:14 +0000 (18:28 +0200)]
Explain a comment in more detail

5 years agoExplain how unused constants may still cause a hard error
Oliver S̶c̶h̶n̶e̶i̶d̶e̶r Scherer [Wed, 17 Oct 2018 08:06:03 +0000 (10:06 +0200)]
Explain how unused constants may still cause a hard error

5 years agoRebase fallout
Oliver Schneider [Mon, 1 Oct 2018 10:52:47 +0000 (12:52 +0200)]
Rebase fallout

5 years agopreserve const eval error information through trait error system
Ralf Jung [Thu, 20 Sep 2018 06:06:57 +0000 (08:06 +0200)]
preserve const eval error information through trait error system

5 years agoadd the lint back to the list, and fix tests
Ralf Jung [Wed, 19 Sep 2018 15:22:03 +0000 (17:22 +0200)]
add the lint back to the list, and fix tests

5 years agofix ui tests (rebase fallout)
Ralf Jung [Wed, 19 Sep 2018 08:59:01 +0000 (10:59 +0200)]
fix ui tests (rebase fallout)

5 years agofor now, just use NULL ptr for unsized locals
Ralf Jung [Wed, 19 Sep 2018 07:40:30 +0000 (09:40 +0200)]
for now, just use NULL ptr for unsized locals

5 years agofix a test comment
Ralf Jung [Wed, 19 Sep 2018 07:30:25 +0000 (09:30 +0200)]
fix a test comment

5 years agoAddressed minor issues brought up in review.
Alexander Regueiro [Tue, 18 Sep 2018 03:26:39 +0000 (04:26 +0100)]
Addressed minor issues brought up in review.

5 years agoRebase fallout in ui output
Oliver Schneider [Fri, 7 Sep 2018 08:53:31 +0000 (10:53 +0200)]
Rebase fallout in ui output

5 years agoUpdate rustdoc test
Oliver Schneider [Tue, 4 Sep 2018 14:09:30 +0000 (16:09 +0200)]
Update rustdoc test

5 years agoMore mono items are generated now
Oliver Schneider [Tue, 4 Sep 2018 12:04:55 +0000 (14:04 +0200)]
More mono items are generated now

5 years agoupdate tests to changes on rustc master
Oliver Schneider [Tue, 4 Sep 2018 10:26:21 +0000 (12:26 +0200)]
update tests to changes on rustc master

5 years agoDocument error/lint cases in const eval
Oliver Schneider [Tue, 4 Sep 2018 09:05:56 +0000 (11:05 +0200)]
Document error/lint cases in const eval

5 years agoExplain the `Reveal::UserFacing` deduplication trick
Oliver Schneider [Mon, 3 Sep 2018 15:09:24 +0000 (17:09 +0200)]
Explain the `Reveal::UserFacing` deduplication trick

5 years agoDon't extend `hir::Def` when there's already a dedicated "function-like" detector
Oliver Schneider [Fri, 31 Aug 2018 12:30:59 +0000 (14:30 +0200)]
Don't extend `hir::Def` when there's already a dedicated "function-like" detector

5 years agoPrepare miri for unsized locals
Oliver Schneider [Fri, 31 Aug 2018 11:46:51 +0000 (13:46 +0200)]
Prepare miri for unsized locals

5 years agoDeduplicate all the ~~things~~ errors
Oliver Schneider [Fri, 31 Aug 2018 08:40:14 +0000 (10:40 +0200)]
Deduplicate all the ~~things~~ errors

5 years agoFix rebase fallout
Oliver Schneider [Fri, 31 Aug 2018 08:39:47 +0000 (10:39 +0200)]
Fix rebase fallout

5 years agoUpdate RELEASES.md
Corey Farwell [Thu, 25 Oct 2018 14:47:07 +0000 (10:47 -0400)]
Update RELEASES.md

Co-Authored-By: steveklabnik <steve@steveklabnik.com>
5 years agoLayout errors can happen because something was too generic
Oliver Schneider [Thu, 30 Aug 2018 14:30:20 +0000 (16:30 +0200)]
Layout errors can happen because something was too generic

5 years agoForward `TooGeneric` errors
Oliver Schneider [Thu, 30 Aug 2018 13:29:29 +0000 (15:29 +0200)]
Forward `TooGeneric` errors

5 years agoReport const eval error inside the query
Oliver Schneider [Sun, 26 Aug 2018 13:19:34 +0000 (15:19 +0200)]
Report const eval error inside the query

5 years agoAuto merge of #55347 - pietroalbini:rollup, r=pietroalbini
bors [Thu, 25 Oct 2018 14:40:22 +0000 (14:40 +0000)]
Auto merge of #55347 - pietroalbini:rollup, r=pietroalbini

Rollup of 22 pull requests

Successful merges:

 - #53507 (Add doc for impl From for Waker)
 - #53931 (Gradually expanding libstd's keyword documentation)
 - #54965 (update tcp stream documentation)
 - #54977 (Accept `Option<Box<$t:ty>>` in macro argument)
 - #55138 (in which unused-parens suggestions heed what the user actually wrote)
 - #55173 (Suggest appropriate syntax on missing lifetime specifier in return type)
 - #55200 (Documents `From` implementations for `Stdio`)
 - #55245 (submodules: update clippy from 5afdf8b7 to b1d03437)
 - #55247 (Clarified code example in char primitive doc)
 - #55251 (Fix a typo in the documentation of RangeInclusive)
 - #55253 (only issue "variant of the expected type" suggestion for enums)
 - #55254 (Correct trailing ellipsis in name_from_pat)
 - #55269 (fix typos in various places)
 - #55282 (Remove redundant clone)
 - #55285 (Do some copy editing on the release notes)
 - #55291 (Update stdsimd submodule)
 - #55296 (Set RUST_BACKTRACE=0 for rustdoc-ui/failed-doctest-output.rs)
 - #55306 (Regression test for #54478.)
 - #55328 (Fix doc for new copysign functions)
 - #55340 (Operands no longer appear in places)
 - #55345 (Remove is_null)
 - #55348 (Update RELEASES.md after destabilization of non_modrs_mods)

Failed merges:

r? @ghost

5 years agoRollup merge of #55348 - pietroalbini:backport-stable-notes, r=pietroalbini
Pietro Albini [Thu, 25 Oct 2018 14:00:39 +0000 (16:00 +0200)]
Rollup merge of #55348 - pietroalbini:backport-stable-notes, r=pietroalbini

Backports the release notes update from stable to master.

r? @ghost

5 years agoUpdate RELEASES.md after destabilization of non_modrs_mods
Pietro Albini [Wed, 24 Oct 2018 13:28:34 +0000 (15:28 +0200)]
Update RELEASES.md after destabilization of non_modrs_mods