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

Revert two unapproved changes to rustc_typeck. #59789

Merged
merged 5 commits into from Nov 7, 2019

Conversation

eddyb
Copy link
Member

@eddyb eddyb commented Apr 8, 2019

There was a breakdown in process (#59004 (comment), #58894 (comment)) and two changes were made to rustc_typeck's "collect" queries, for rustdoc, that were neither needed nor correct.
I'm reverting them here, and will fix up rustdoc somehow, if necessary.

cc @rust-lang/compiler How do we ensure this doesn't happen again?

r? @nikomatsakis or @oli-obk

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Apr 8, 2019
@oli-obk
Copy link
Contributor

oli-obk commented Apr 8, 2019

cc @rust-lang/compiler How do we ensure this doesn't happen again?

We could setup bors to require a github approval from a relevant team member on certain source paths.

@petrochenkov
Copy link
Contributor

petrochenkov commented Apr 8, 2019

How do we ensure this doesn't happen again?

Sigh, resolve has a bunch of rustdoc-specific (and diagnostics-specific) hacks that don't work entirely correctly, but at least they don't affect the normal compiler run.
I ended up letting them live, not blocking PRs introducing them, and just hoping to remove or refactor them into something more correct and aesthetically pleasing some day.
If I had all the time in the world, I'd of course took every PR that I think could be done better and rewrote it properly, but a man can dream...

@GuillaumeGomez
Copy link
Member

GuillaumeGomez commented Apr 8, 2019

If I had all the time in the world, I'd of course took every PR from GuillaumeGomez and rewrote it properly, but a man can dream...

All of them have been approved except for the two last ones (and on the last one I did ping the compiler team!). If not happy with the PR, you can comment on it.

By merging this PR, you'll reintroduce bugs in rustdoc. I'm against this changes. The process hasn't been followed, I'm sorry about that, but instead, wouldn't it be better to fix the librustc_typeck bad changes I made directly? As far as I can tell, it doesn't break anything in the rustc internals whereas reverting will break rustdoc again.

@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-6.0 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
travis_time:end:03becf5e:start=1554707282779199429,finish=1554707373412668843,duration=90633469414
$ git checkout -qf FETCH_HEAD
travis_fold:end:git.checkout

Encrypted environment variables have been removed for security reasons.
See https://docs.travis-ci.com/user/pull-requests/#pull-requests-and-security-restrictions
$ export SCCACHE_BUCKET=rust-lang-ci-sccache2
$ export SCCACHE_REGION=us-west-1
$ export GCP_CACHE_BUCKET=rust-lang-ci-cache
Setting environment variables from .travis.yml
---
[00:59:11] 
[00:59:11] error: Could not document `alloc`.
[00:59:11] 
[00:59:11] Caused by:
[00:59:11]   process didn't exit successfully: `/checkout/obj/build/bootstrap/debug/rustdoc --edition=2018 --crate-name alloc src/liballoc/lib.rs --color always --target x86_64-unknown-linux-gnu -o /checkout/obj/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/doc --markdown-css rust.css --markdown-no-toc --generate-redirect-pages --resource-suffix 1.35.0 --index-page /checkout/src/doc/index.md -L dependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps -L dependency=/checkout/obj/build/x86_64-unknown-linux-gnu/stage1-std/release/deps --extern compiler_builtins=/checkout/obj/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps/libcompiler_builtins-983bfd746ea1187e.rmeta --extern core=/checkout/obj/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release/deps/libcore-c94a89edb07c8a5f.rmeta` (exit code: 1)
[00:59:11] 
[00:59:11] 
[00:59:11] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "rustdoc" "--target" "x86_64-unknown-linux-gnu" "-j" "4" "--release" "--locked" "--color" "always" "--features" "panic-unwind backtrace" "--manifest-path" "/checkout/src/libstd/Cargo.toml" "-Z" "unstable-options" "-p" "alloc" "--" "--markdown-css" "rust.css" "--markdown-no-toc" "--generate-redirect-pages" "--resource-suffix" "1.35.0" "--index-page" "/checkout/src/doc/index.md"
[00:59:11] 
[00:59:11] 
[00:59:11] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap doc
[00:59:11] Build completed unsuccessfully in 0:07:17
---
travis_time:end:1c44423a:start=1554710935638239108,finish=1554710935648839095,duration=10599987
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:123c2b2f
$ cat ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
cat: ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers: No such file or directory
travis_fold:end:after_failure.5
travis_fold:start:after_failure.6
travis_time:start:10a69316
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@oli-obk
Copy link
Contributor

oli-obk commented Apr 8, 2019

I opened #59790 for further discussion. This PR should of course not break rustdoc, but address the original issues in a manner not affecting regular compilation.

@eddyb
Copy link
Member Author

eddyb commented Apr 8, 2019

If not happy with the PR, you can comment on it.

There should be an explicit review and approval, i.e. default to not merge non-rustc changes to rustc crates, instead of defaulting to merge in the absence of requested changes.

As far as I can tell, it doesn't break anything in the rustc internals whereas reverting will break rustdoc again.

As I've explained in #59790 (comment), this is undocumented cruft, and as such it will cause confusion or even stop some refactors, if nobody checks the change history and just assumes the code is needed.

And I obviously can't break rustdoc, since we have tests! So I'm forced to do a minimal fix, at least.


@petrochenkov FWIW, I think rustdoc as a whole needs some refactors, and @rust-lang/rustdoc has to make due with the codebase they've inherited. I've offered a few times but ended up with not enough spare time to do said refactors (although maybe I should try again, e.g. the comments I left on #58894).

Overall I'd rather stick the blame on the grandfathered codebase, and process breakdown, than individuals.

@QuietMisdreavus
Copy link
Member

If #59004 and #58894 were the PRs that introduced the problematic changes, we can revert them wholesale. They were an enhancement and cosmetic fix, respectively, and reverting them should not introduce any show-stopping bugs to rustdoc.

It wouldn't hurt to get more eyes on rustdoc PRs more generally; i know i've been struggling to stay on top of my review queue, and having more hands would help keep everything going smoothly.

@eddyb
Copy link
Member Author

eddyb commented Apr 8, 2019

@QuietMisdreavus no need, for #59004 I already have an equivalent replacement (since the data is already in rustdoc, no need to ask typeck to recompute it), while for #58894 I almost already have the proper solution implemented (cross-crate explicit_predicates_of, which is mostly copy-paste).

@GuillaumeGomez
Copy link
Member

@QuietMisdreavus Considering that #59004 is a big search improvement, it'd be quite the regression to revert. Luckily for me, it's not needed. 😌

@eddyb
Copy link
Member Author

eddyb commented Apr 9, 2019

@bors try (let's see if I made anything significantly slower)

@bors
Copy link
Contributor

bors commented Apr 9, 2019

⌛ Trying commit 76166f6 with merge b2e5868...

bors added a commit that referenced this pull request Apr 9, 2019
Revert two unapproved changes to rustc_typeck.

There was a breakdown in process (#59004 (comment), #58894 (comment)) and two changes were made to `rustc_typeck`'s "collect" queries, for rustdoc, that were neither needed *nor* correct.
I'm reverting them here, and will fix up rustdoc *somehow*, if necessary.

cc @rust-lang/compiler How do we ensure this doesn't happen again?

r? @nikomatsakis or @oli-obk
@bors
Copy link
Contributor

bors commented Apr 10, 2019

☀️ Try build successful - checks-travis
Build commit: b2e5868

@eddyb
Copy link
Member Author

eddyb commented Apr 10, 2019

@rust-timer build b2e5868

@rust-timer
Copy link
Collaborator

Success: Queued b2e5868 with parent 3750348, comparison URL.

@rust-timer
Copy link
Collaborator

Finished benchmarking try commit b2e5868

@eddyb
Copy link
Member Author

eddyb commented Apr 10, 2019

cc @nikomatsakis @michaelwoerister @nnethercote How bad are the perf results?

I could try to supply predicates_defined_on (which is equivalent to predicates_of except for traits) from rustc_metadata by deserializing the explicit_predicates_of and then deserializing and appending the inferred_outlives_of without allocating either into an Lrc, but I'm not sure that's needed.

@nnethercote
Copy link
Contributor

The worst-affected benchmarks are the short-running, less important ones. But it's still clearly a regression :(

@nnethercote
Copy link
Contributor

Here is a Cachegrind diff for a "Check CleanIncr" build of ripgrep, which was one the biggest regressions in a larger benchmark.

--------------------------------------------------------------------------------
Ir                 
--------------------------------------------------------------------------------
9,063,571 (100.0%)  PROGRAM TOTALS

--------------------------------------------------------------------------------
Ir                   file:function
--------------------------------------------------------------------------------
-1,355,130 (-15.0%)  /home/njn/moz/rustN/src/libserialize/serialize.rs:serialize::serialize::Decoder::read_struct_field
   899,266 ( 9.92%)  /home/njn/moz/rustN/src/librustc_metadata/decoder.rs:rustc_metadata::decoder::DecodeContext::read_lazy_distance
   772,315 ( 8.52%)  /home/njn/moz/rustN/src/libserialize/serialize.rs:<rustc_metadata::schema::Entry as serialize::serialize::Decodable>::decode
   647,102 ( 7.14%)  /home/njn/moz/rustN/src/libstd/collections/hash/table.rs:rustc::dep_graph::prev::PreviousDepGraph::new
   575,554 ( 6.35%)  /home/njn/moz/rustN/src/libcore/ptr.rs:rustc::dep_graph::prev::PreviousDepGraph::new
   493,118 ( 5.44%)  /home/njn/moz/rustN/src/libstd/collections/hash/map.rs:rustc::dep_graph::prev::PreviousDepGraph::new
   431,526 ( 4.76%)  /home/njn/moz/rustN/src/librustc_metadata/decoder.rs:<rustc_metadata::schema::Entry as serialize::serialize::Decodable>::decode
  -408,336 (-4.51%)  /home/njn/moz/rustN/src/librustc_metadata/schema.rs:<rustc_metadata::schema::Entry as serialize::serialize::Decodable>::decode
   380,927 ( 4.20%)  /home/njn/moz/rustN/src/libcore/intrinsics.rs:rustc::dep_graph::prev::PreviousDepGraph::new
   379,621 ( 4.19%)  /home/njn/moz/rustN/src/libserialize/opaque.rs:<serialize::opaque::Decoder as serialize::serialize::Decoder>::read_usize
   338,776 ( 3.74%)  /home/njn/moz/rustN/src/libserialize/leb128.rs:rustc_incremental::persist::load::load_dep_graph::{{closure}}::{{closure}}
   301,719 ( 3.33%)  /home/njn/moz/rustN/src/librustc/dep_graph/graph.rs:rustc::dep_graph::graph::DepGraph::try_mark_previous_green
   293,040 ( 3.23%)  /home/njn/moz/rustN/src/libserialize/serialize.rs:<u32 as serialize::serialize::Encodable>::encode
   281,777 ( 3.11%)  /home/njn/moz/rustN/src/libserialize/leb128.rs:<u32 as serialize::serialize::Encodable>::encode
   276,688 ( 3.05%)  /home/njn/moz/rustN/src/libserialize/leb128.rs:<serialize::opaque::Decoder as serialize::serialize::Decoder>::read_usize
   245,283 ( 2.71%)  /home/njn/moz/rustN/src/libcore/num/mod.rs:rustc::dep_graph::prev::PreviousDepGraph::new
   217,059 ( 2.39%)  /home/njn/moz/rustN/src/libstd/collections/hash/map.rs:rustc::dep_graph::graph::CurrentDepGraph::intern_node
  -189,246 (-2.09%)  /home/njn/moz/rustN/src/librustc_metadata/decoder.rs:serialize::serialize::Decoder::read_struct_field
   183,414 ( 2.02%)  /home/njn/moz/rustN/src/librustc/dep_graph/graph.rs:rustc::dep_graph::graph::CurrentDepGraph::intern_node
   177,540 ( 1.96%)  /home/njn/.cargo/registry/src/github.com-1ecc6299db9ec823/smallvec-0.6.7/lib.rs:smallvec::SmallVec<A>::push
   169,388 ( 1.87%)  /home/njn/moz/rustN/src/liballoc/vec.rs:<u32 as serialize::serialize::Encodable>::encode
   151,618 ( 1.67%)  /home/njn/moz/rustN/src/libcore/slice/mod.rs:rustc::dep_graph::graph::DepGraph::try_mark_previous_green
   148,582 ( 1.64%)  /home/njn/moz/rustN/src/libcore/slice/mod.rs:rustc::dep_graph::graph::DepGraph::serialize
   129,970 ( 1.43%)  /home/njn/moz/rustN/src/libstd/collections/hash/table.rs:rustc_resolve::Resolver::set_binding_parent_module
   129,382 ( 1.43%)  /home/njn/moz/rustN/<::rustc::ty::codec::__impl_decoder_methods macros>:<rustc_metadata::schema::Entry as serialize::serialize::Decodable>::decode
   122,276 ( 1.35%)  /home/njn/moz/rustN/src/librustc_data_structures/fingerprint.rs:rustc_data_structures::fingerprint::Fingerprint::encode_opaque
   103,533 ( 1.14%)  /home/njn/moz/rustN/src/libcore/slice/mod.rs:<serialize::opaque::Decoder as serialize::serialize::Decoder>::read_usize
   100,119 ( 1.10%)  /home/njn/moz/rustN/src/librustc/ty/query/on_disk_cache.rs:rustc::ty::query::on_disk_cache::OnDiskCache::load_diagnostics
    99,423 ( 1.10%)  /home/njn/moz/rustN/src/libstd/collections/hash/table.rs:rustc::dep_graph::graph::CurrentDepGraph::intern_node
    93,258 ( 1.03%)  /home/njn/moz/rustN/src/libserialize/serialize.rs:rustc_incremental::persist::load::load_dep_graph::{{closure}}::{{closure}}

@eddyb
Copy link
Member Author

eddyb commented Apr 10, 2019

@bors try

@bors
Copy link
Contributor

bors commented Apr 10, 2019

⌛ Trying commit 6cd0befb14ca0bdb991e34658a27bfd893b76ff0 with merge 731027337fee4c5fc708578f8be3f99e275dac67...

@eddyb
Copy link
Member Author

eddyb commented Apr 10, 2019

@nnethercote Now the encoding/decoding should be the same as before in most cases.

@rust-timer
Copy link
Collaborator

Finished benchmarking try commit 0ba7f2605ec9d9c443d7d70bc109b69a79c0f79d, comparison URL.

@JohnCSimon
Copy link
Member

Ping from triage?
@eddyb Can you please address the merge conflict?
cc: @nikomatsakis
Thank you!

@nikomatsakis
Copy link
Contributor

@bors r+

@bors
Copy link
Contributor

bors commented Nov 6, 2019

📌 Commit d594fc2 has been approved by nikomatsakis

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Nov 6, 2019
@bors
Copy link
Contributor

bors commented Nov 7, 2019

⌛ Testing commit d594fc2 with merge 428fc5295fdf13884968104e1e2d9bf9e74f9020...

@rust-highfive
Copy link
Collaborator

Your PR failed (pretty log, raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
2019-11-07T00:02:42.9158861Z do so (now or later) by using -b with the checkout command again. Example:
2019-11-07T00:02:42.9158919Z 
2019-11-07T00:02:42.9159003Z   git checkout -b <new-branch-name>
2019-11-07T00:02:42.9159051Z 
2019-11-07T00:02:42.9159174Z HEAD is now at 428fc5295 Auto merge of #59789 - eddyb:typeck-reverts, r=nikomatsakis
2019-11-07T00:02:42.9600771Z ##[section]Starting: Decide whether to run this job
2019-11-07T00:02:42.9723278Z ==============================================================================
2019-11-07T00:02:42.9723376Z Task         : Bash
2019-11-07T00:02:42.9723473Z Description  : Run a Bash script on macOS, Linux, or Windows
---
2019-11-07T00:02:44.4899965Z BUILD_SOURCEBRANCHNAME=auto
2019-11-07T00:02:44.4900226Z BUILD_SOURCESDIRECTORY=D:\a\1\s
2019-11-07T00:02:44.4900343Z BUILD_SOURCEVERSION=428fc5295fdf13884968104e1e2d9bf9e74f9020
2019-11-07T00:02:44.4900451Z BUILD_SOURCEVERSIONAUTHOR=bors
2019-11-07T00:02:44.4900571Z BUILD_SOURCEVERSIONMESSAGE=Auto merge of #59789 - eddyb:typeck-reverts, r=nikomatsakis
2019-11-07T00:02:44.4900779Z COBERTURA_HOME=C:\cobertura-2.1.1
2019-11-07T00:02:44.4900885Z COMMONPROGRAMFILES=C:\Program Files\Common Files
2019-11-07T00:02:44.4900977Z COMMON_TESTRESULTSDIRECTORY=D:\a\1\TestResults
2019-11-07T00:02:44.4901121Z COMPUTERNAME=fv-az213
---
2019-11-07T00:02:44.4903091Z GeckoWebDriver=C:\SeleniumWebDrivers\GeckoDriver
2019-11-07T00:02:44.4903294Z HOME=/c/Users/VssAdministrator
2019-11-07T00:02:44.4903892Z HOMEDRIVE=C:
2019-11-07T00:02:44.4903973Z HOMEPATH=\Users\VssAdministrator
2019-11-07T00:02:44.4904096Z I'm reverting them here, and will fix up rustdoc *somehow*, if necessary.
2019-11-07T00:02:44.4904304Z INPUT_ARGUMENTS=
2019-11-07T00:02:44.4905133Z ImageVersion=20191009.1
2019-11-07T00:02:44.4905226Z JAVA_HOME=C:\Program Files\Java\zulu-8-azure-jdk_8.40.0.25-8.0.222-win_x64
2019-11-07T00:02:44.4905356Z JAVA_HOME_11_X64=C:\Program Files\Java\zulu-11-azure-jdk_11.33.15-11.0.4-win_x64
---
2019-11-07T00:02:44.4911584Z ProgramFiles(x86)=C:\Program Files (x86)
2019-11-07T00:02:44.4911662Z ProgramW6432=C:\Program Files
2019-11-07T00:02:44.4911767Z RUNNER_TOOLSDIRECTORY=C:/hostedtoolcache/windows
2019-11-07T00:02:44.4911881Z RUST_CONFIGURE_ARGS=--build=i686-pc-windows-msvc --target=i586-pc-windows-msvc --enable-full-tools --enable-profiler
2019-11-07T00:02:44.4912008Z Revert two unapproved changes to rustc_typeck.
2019-11-07T00:02:44.4912279Z SCCACHE_BUCKET=rust-lang-ci-sccache2
2019-11-07T00:02:44.4912372Z SCRIPT=python x.py dist
2019-11-07T00:02:44.4912452Z SHLVL=2
2019-11-07T00:02:44.4912531Z SYSTEM=build
---
2019-11-07T00:02:44.4917069Z TMP=/tmp
2019-11-07T00:02:44.4917170Z TOOLSTATE_ISSUES_API_URL=https://api.github.com/repos/rust-lang/rust/issues
2019-11-07T00:02:44.4917257Z TOOLSTATE_PUBLISH=1
2019-11-07T00:02:44.4917361Z TOOLSTATE_REPO=https://github.com/rust-lang-nursery/rust-toolstate
2019-11-07T00:02:44.4917558Z There was a breakdown in process (https://github.com/rust-lang/rust/pull/59004#issuecomment-477600735, https://github.com/rust-lang/rust/pull/58894#discussion_r272795560) and two changes were made to `rustc_typeck`'s "collect" queries, for rustdoc, that were neither needed *nor* correct.
2019-11-07T00:02:44.4917867Z USERDOMAIN=fv-az213
2019-11-07T00:02:44.4917967Z USERDOMAIN_ROAMINGPROFILE=fv-az213
2019-11-07T00:02:44.4918044Z USERNAME=VssAdministrator
2019-11-07T00:02:44.4918138Z USERPROFILE=C:\Users\VssAdministrator
---
2019-11-07T00:08:29.2061763Z   6 5495k    6  356k    0     0   1071      0  1:27:33  0:05:40  1:21:53     0
2019-11-07T00:08:30.2207176Z   6 5495k    6  356k    0     0   1068      0  1:27:48  0:05:41  1:22:07     0
2019-11-07T00:08:30.8318915Z   6 5495k    6  356k    0     0   1065      0  1:28:03  0:05:42  1:22:21     0
2019-11-07T00:08:30.8346644Z   6 5495k    6  356k    0     0   1063      0  1:28:13  0:05:43  1:22:30     0
2019-11-07T00:08:30.8346830Z curl: (56) OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054
2019-11-07T00:08:30.8428260Z 
2019-11-07T00:08:30.8532386Z ##[error]Bash exited with code '56'.
2019-11-07T00:08:30.8785846Z ##[section]Starting: Checkout
2019-11-07T00:08:30.8904071Z ==============================================================================
2019-11-07T00:08:30.8904223Z Task         : Get sources
2019-11-07T00:08:30.8904320Z Description  : Get sources from a repository. Supports Git, TfsVC, and SVN repositories.

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@bors
Copy link
Contributor

bors commented Nov 7, 2019

💔 Test failed - checks-azure

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Nov 7, 2019
@eddyb
Copy link
Member Author

eddyb commented Nov 7, 2019

@bors retry
(spurious network failure)

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Nov 7, 2019
Centril added a commit to Centril/rust that referenced this pull request Nov 7, 2019
Revert two unapproved changes to rustc_typeck.

There was a breakdown in process (rust-lang#59004 (comment), rust-lang#58894 (comment)) and two changes were made to `rustc_typeck`'s "collect" queries, for rustdoc, that were neither needed *nor* correct.
I'm reverting them here, and will fix up rustdoc *somehow*, if necessary.

cc @rust-lang/compiler How do we ensure this doesn't happen again?

r? @nikomatsakis or @oli-obk
bors added a commit that referenced this pull request Nov 7, 2019
Rollup of 5 pull requests

Successful merges:

 - #59789 (Revert two unapproved changes to rustc_typeck.)
 - #65752 (Use structured suggestions for missing associated items)
 - #65884 (syntax: ABI-oblivious grammar)
 - #65974 (A scheme for more macro-matcher friendly pre-expansion gating)
 - #66017 (Add future incompatibility lint for `array.into_iter()`)

Failed merges:

 - #66056 (rustc_metadata: Some reorganization of the module structure)

r? @ghost
@bors
Copy link
Contributor

bors commented Nov 7, 2019

⌛ Testing commit d594fc2 with merge 50f8aad...

@bors bors merged commit d594fc2 into rust-lang:master Nov 7, 2019
@eddyb eddyb deleted the typeck-reverts branch November 7, 2019 12:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet