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

NLL: User type annotations refactor, associated constant patterns and ref bindings. #55937

Merged
merged 11 commits into from Jan 1, 2019

Conversation

Projects
None yet
7 participants
@davidtwco
Copy link
Member

commented Nov 13, 2018

Fixes #55511 and Fixes #55401. Contributes to #54943.

This PR performs a large refactoring on user type annotations, checks user type annotations for associated constants in patterns and that user type annotations for ref bindings are respected.

r? @nikomatsakis

@davidtwco

This comment was marked as outdated.

Copy link
Member Author

commented Nov 13, 2018

As of submission, this PR only implements half of the proposed solution. WIP PR requested by @nikomatsakis to aid discussion in Zulip.

@rust-highfive

This comment was marked as outdated.

Copy link
Collaborator

commented Nov 13, 2018

The job x86_64-gnu-llvm-5.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:0c31544c:start=1542146451797236621,finish=1542146511332127771,duration=59534891150
$ 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
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
[00:21:41]    Compiling rustc_errors v0.0.0 (/checkout/src/librustc_errors)
[00:23:07]    Compiling proc_macro v0.0.0 (/checkout/src/libproc_macro)
[00:23:16]    Compiling syntax_ext v0.0.0 (/checkout/src/libsyntax_ext)
0:43
[00:25:00] make: *** [all] Error 1
[00:25:00] Makefile:28: recipe for target 'all' failed
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:0e5025c0
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Tue Nov 13 22:27:01 UTC 2018

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)

Show resolved Hide resolved src/librustc/mir/mod.rs Outdated
Show resolved Hide resolved src/librustc/mir/visit.rs Outdated
Show resolved Hide resolved src/librustc_mir/borrow_check/nll/type_check/mod.rs Outdated

@davidtwco davidtwco force-pushed the davidtwco:issue-54943 branch from 861c01e to 711599a Nov 16, 2018

@davidtwco

This comment was marked as outdated.

Copy link
Member Author

commented Nov 16, 2018

Pushed a new commit that is much closer to what we're wanting - it still fails but it's closer.

@rust-highfive

This comment was marked as outdated.

Copy link
Collaborator

commented Nov 16, 2018

The job x86_64-gnu-llvm-5.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:177a15fe:start=1542392089429619845,finish=1542392142816546067,duration=53386926222
$ 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
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
[00:22:12]    Compiling rustc_asan v0.0.0 (/checkout/src/librustc_asan)
[00:22:12]    Compiling rustc_tsan v0.0.0 (/checkout/src/librustc_tsan)
[00:22:12]    Compiling rustc_lsan v0.0.0 (/checkout/src/librustc_lsan)
[00:22:13]    Compiling rustc_msan v0.0.0 (/checkout/src/librustc_msan)
[00:22:34] error: internal compiler error: librustc_traits/type_op.rs:148: user ty should have a substs
[00:22:34] thread 'main' panicked at 'Box<Any>', librustc_errors/lib.rs:600:9
[00:22:34] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[00:22:34] error: aborting due to previous error
[00:22:34] 
[00:22:34] 
[00:22:34] 
[00:22:34] note: the compiler unexpectedly panicked. this is a bug.
[00:22:34] 
[00:22:34] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:22:34] 
[00:22:34] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:22:34] 
[00:22:34] note: compiler flags: -Z force-unstable-if-unmarked -C opt-level=2 -C prefer-dynamic -C debug-assertions=y -C codegen-units=1 -C link-args=-Wl,-rpath,$ORIGIN/../lib --crate-type lib
[00:22:34] note: some of the compiler flags provided by cargo are hidden
[00:22:34] 
[00:22:34] error: Could not compile `core`.
[00:22:34] 
[00:22:34] 
[00:22:34] To learn more, run the command again with --verbose.
[00:22:34] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0/bin/cargo" "build" "--target" "x86_64-unknown-linux-gnu" "-j" "4" "--release" "--locked" "--color" "always" "--features" "panic-unwind backtrace" "--manifest-path" "/checkout/src/libstd/Cargo.toml" "--message-format" "json"
[00:22:34] expected success, got: exit code: 101
[00:22:34] thread 'main' panicked at 'cargo must succeed', bootstrap/compile.rs:1101:9
[00:22:34] travis_fold:end:stage1-std

[00:22:34] travis_time:end:stage1-std:start=1542393472540585477,finish=1542393506785273200,duration=34244687723


[00:22:34] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap build
[00:22:34] Build completed unsuccessfully in 0:18:10
[00:22:34] Makefile:28: recipe for target 'all' failed
[00:22:34] make: *** [all] Error 1
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:16816dbb
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Fri Nov 16 18:38:27 UTC 2018

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)

@davidtwco davidtwco force-pushed the davidtwco:issue-54943 branch 2 times, most recently from 052aedc to c3a9f4d Nov 16, 2018

@rust-highfive

This comment was marked as outdated.

Copy link
Collaborator

commented Nov 16, 2018

The job x86_64-gnu-llvm-5.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:0451ecdb:start=1542408162033090880,finish=1542408220208908539,duration=58175817659
$ 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
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning
/usr/local/lib/python2.7/dist-packages/pip/_vendor/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/security.html#insecureplatformwarning.
  InsecurePlatformWarning
  Downloading https://files.pythonhosted.org/packages/a6/da/c99b10bfc509cbbea520886d2e8fe0e738e3ce22e2f528381f3bb2229433/awscli-1.16.57-py2.py3-none-any.whl (1.4MB)
    0% |▎                               | 10kB 15.5MB/s eta 0:00:01
    1% |▌                               | 20kB 1.9MB/s eta 0:00:01
    2% |▊                               | 30kB 2.2MB/s eta 0:00:01
    2% |█                               | 40kB 2.0MB/s eta 0:00:01
---
[00:55:40] .................................................................................................... 100/5021
[00:55:43] .................................................................................................... 200/5021
[00:55:46] .............................ii............................................ii...................ii.. 300/5021
[00:55:48] ..............................................................................................iii... 400/5021
[00:55:51] .....iiiiiiii.iii............................iii...........................................i........ 500/5021
[00:55:59] .................................................................................................... 700/5021
[00:56:05] .................................................................................i...........i...... 800/5021
[00:56:09] .................................................................................................... 900/5021
[00:56:12] iiiii...................iiiiii...................................................................... 1000/5021
---
[00:56:50] .................................................................................................... 2200/5021
[00:56:54] .................................................................................................... 2300/5021
[00:56:58] .................................................................................................... 2400/5021
[00:57:02] .................................................................................................... 2500/5021
[00:57:06] .................................................................................iiiiiiiii.......... 2600/5021
[00:57:13] ...............................................ii................................................... 2800/5021
[00:57:16] .................................................................................................... 2900/5021
[00:57:20] .................................................................................................... 3000/5021
[00:57:24] ..........................................i......................................................... 3100/5021
---
[01:12:11] thread 'main' panicked at 'Some tests failed', tools/compiletest/src/main.rs:503:22
[01:12:11] F..............................................
[01:12:11] failures:
[01:12:11] 
[01:12:11] ---- [mir-opt] mir-opt/basic_assignment.rs stdout ----
[01:12:11] thread '[mir-opt] mir-opt/basic_assignment.rs' panicked at 'Did not find expected line, error: Mismatch in lines
[01:12:11] Current block: None
[01:12:11] Actual Line: "        AscribeUserType(_4, o, UserTypeProjection { base: UserTypeAnnotation(1), projs: [] });"
[01:12:11] Expected Line: "       AscribeUserType(_4, o, UserTypeProjection { base: Ty(Canonical { max_universe: U0, variables: [], value: std::option::Option<std::boxed::Box<u32>> }), projs: [] });"
[01:12:11] Test Name: rustc.main.SimplifyCfg-initial.after.mir
[01:12:11] ... (elided)
[01:12:11]    bb0: {
[01:12:11]    bb0: {
[01:12:11]        StorageLive(_1);
[01:12:11]        _1 = const false;
[01:12:11]        FakeRead(ForLet, _1);
[01:12:11]        StorageLive(_2);
[01:12:11]        StorageLive(_3);
[01:12:11]        _3 = _1;
[01:12:11]        _2 = move _3;
[01:12:11]        StorageDead(_3);
[01:12:11]        StorageLive(_4);
[01:12:11]        _4 = std::option::Option<std::boxed::Box<u32>>::None;
[01:12:11]        FakeRead(ForLet, _4);
[01:12:11]        AscribeUserType(_4, o, UserTypeProjection { base: Ty(Canonical { max_universe: U0, variables: [], value: std::option::Option<std::boxed::Box<u32>> }), projs: [] });
[01:12:11]        StorageLive(_5);
[01:12:11]        StorageLive(_6);
[01:12:11]        _6 = move _4;
[01:12:11]        replace(_5 <- move _6) -> [return: bb2, unwind: bb5];
[01:12:11] ... (elided)
[01:12:11]    bb2: {
[01:12:11]    bb2: {
[01:12:11]        drop(_6) -> [return: bb6, unwind: bb4];
[01:12:11] ... (elided)
[01:12:11]    bb5: {
[01:12:11]        drop(_6) -> bb4;
[01:12:11]    }
[01:12:11]    }
[01:12:11] Actual:
[01:12:11] fn main() -> (){
[01:12:11]     let mut _0: ();
[01:12:11]     scope 1 {
[01:12:11]         scope 3 {
[01:12:11]             scope 5 {
[01:12:11]                 scope 7 {
[01:12:11]                 scope 8 {
[01:12:11]                 scope 8 {
[01:12:11]                     let _5: std::option::Option<std::boxed::Box<u32>>;
[01:12:11]             }
[01:12:11]             scope 6 {
[01:12:11]             scope 6 {
[01:12:11]                 let _4: std::option::Option<std::boxed::Box<u32>> as UserTypeProjection { base: UserTypeAnnotation(0), projs: [] };
[01:12:11]         }
[01:12:11]         scope 4 {
[01:12:11]         scope 4 {
[01:12:11]             let _2: bool;
[01:12:11]     }
[01:12:11]     scope 2 {
[01:12:11]     scope 2 {
[01:12:11]         let _1: bool;
[01:12:11]     }
[01:12:11]     let mut _3: bool;
[01:12:11]     let mut _6: std::option::Option<std::boxed::Box<u32>>;
[01:12:11]     bb0: {                              
[01:12:11]         StorageLive(_1);
[01:12:11]         _1 = const false;
[01:12:11]         FakeRead(ForLet, _1);
[01:12:11]         StorageLive(_2);
[01:12:11]         StorageLive(_3);
[01:12:11]         _3 = _1;
[01:12:11]         _2 = move _3;
[01:12:11]         StorageDead(_3);
[01:12:11]         StorageLive(_4);
[01:12:11]         _4 = std::option::Option<std::boxed::Box<u32>>::None;
[01:12:11]         FakeRead(ForLet, _4);
[01:12:11]         AscribeUserType(_4, o, UserTypeProjection { base: UserTypeAnnotation(1), projs: [] });
[01:12:11]         StorageLive(_5);
[01:12:11]         StorageLive(_6);
[01:12:11]         _6 = move _4;
[01:12:11]         replace(_5 <- move _6) -> [return: bb2, unwind: bb5];
[01:12:11]     bb1: {
[01:12:11]         resume;
[01:12:11]     }
[01:12:11]     }
[01:12:11]     bb2: {                              
[01:12:11]         drop(_6) -> [return: bb6, unwind: bb4];
[01:12:11]     bb3: {
[01:12:11]         drop(_4) -> bb1;
[01:12:11]     }
[01:12:11]     bb4: {
[01:12:11]     bb4: {
[01:12:11]         drop(_5) -> bb3;
[01:12:11]     }
[01:12:11]     bb5: {
[01:12:11]         drop(_6) -> bb4;
[01:12:11]     }
[01:12:11]     bb6: {                              
[01:12:11]         StorageDead(_6);
[01:12:11]         _0 = ();
[01:12:11]         drop(_5) -> [return: bb7, unwind: bb3];
[01:12:11]     }
[01:12:11]     bb7: {                              
[01:12:11]         StorageDead(_5);
[01:12:11]         drop(_4) -> [return: bb8, unwind: bb1];
[01:12:11]     }
-cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"
[01:12:11] 
[01:12:11] 
[01:12:11] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[01:12:11] Build completed unsuccessfully in 0:20:30
[01:12:11] Build completed unsuccessfully in 0:20:30
[01:12:11] make: *** [check] Error 1
[01:12:11] Makefile:58: recipe for target 'check' failed
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:08faf214
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Fri Nov 16 23:56:00 UTC 2018
---
travis_time:end:0517e900:start=1542412562242349711,finish=1542412562385407920,duration=143058209
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:195d0a82
$ 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:034b0ab4
$ 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)

@nikomatsakis
Copy link
Contributor

left a comment

Looks great! Left one nit.

r=me once tests passed and comment is added

Show resolved Hide resolved src/librustc_mir/borrow_check/nll/type_check/mod.rs Outdated

@nikomatsakis nikomatsakis changed the title WIP: NLL doesn't check that user type annotations are well-formed in unreachable code NLL doesn't check that user type annotations are well-formed in unreachable code Nov 20, 2018

@davidtwco davidtwco force-pushed the davidtwco:issue-54943 branch 3 times, most recently from ef8f048 to 5069d62 Nov 22, 2018

@davidtwco

This comment has been minimized.

Copy link
Member Author

commented Nov 22, 2018

Pushed the first version of this that does what it says on the tin. Will need a fresh review as a lot has changed.

@rust-highfive

This comment was marked as resolved.

Copy link
Collaborator

commented Nov 23, 2018

The job x86_64-gnu-llvm-5.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:024ad94c:start=1542928391353980032,finish=1542928392503369898,duration=1149389866
$ 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
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
[00:49:40] .................................................................................................... 100/5048
[00:49:43] .................................................................................................... 200/5048
[00:49:46] .............................ii............................................ii...................ii.. 300/5048
[00:49:49] ..............................................................................................iii... 400/5048
[00:49:51] .....iiiiiiii.iii............................iii...........................................i........ 500/5048
[00:49:58] .................................................................................................... 700/5048
[00:50:04] ...................................................................................i...........i.... 800/5048
[00:50:07] .................................................................................................... 900/5048
[00:50:10] ..iiiii..................ii.iiii.................................................................... 1000/5048
---
[00:50:44] .................................................................................................... 2200/5048
[00:50:48] .................................................................................................... 2300/5048
[00:50:52] .................................................................................................... 2400/5048
[00:50:56] .................................................................................................... 2500/5048
[00:50:59] ...........................................................................................iiiiiiiii 2600/5048
[00:51:06] .........................................................ii......................................... 2800/5048
[00:51:09] .................................................................................................... 2900/5048
[00:51:12] .................................................................................................... 3000/5048
[00:51:15] .....................................................i.............................................. 3100/5048
---
[00:56:57] .......................i............................................................................ 2400/2886
[00:57:08] .................................................................................................... 2500/2886
[00:57:38] .................................................................................................... 2600/2886
[00:57:48] .................................................................................................... 2700/2886
[00:57:57] ........F........................................................................................... 2800/2886
ser type UserTypeAnnotation(0) vs fn(i32) -> Newt<i32> {Newt<i32>}: NoSolution","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/ufcs-polymorphic-paths.rs","byte_start":2324,"byte_end":2335,"line_start":90,"line_end":90,"column_start":5,"column_end":16,"is_primary":true,"text":[{"text":"    Newt::<i32>, fn(i32) -> Newt<i32>, (5);","highlight_start":5,"highlight_end":16}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: broken MIR in DefId(0/0:62 ~ ufcs_polymorphic_paths[317d]::main[0]::C[5]) (const Newt): bad constant user type UserTypeAnnotation(0) vs fn(i32) -> Newt<i32> {Newt<i32>}: NoSolution\n  --> /checkout/src/test/run-pass/ufcs-polymorphic-paths.rs:90:5\n   |\nLL |     Newt::<i32>, fn(i32) -> Newt<i32>, (5);\n   |     ^^^^^^^^^^^\n\n"}
[00:58:08] {"message":"broken MIR in DefId(0/0:59 ~ ufcs_polymorphic_paths[317d]::main[0]::S[3]) (const std::prelude::v1::Some): bad constant user type UserTypeAnnotation(0) vs fn(i32) -> std::option::Option<i32> {std::option::Option<i32>::Some}: NoSolution","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/ufcs-polymorphic-paths.rs","byte_start":2207,"byte_end":2218,"line_start":86,"line_end":86,"column_start":5,"column_end":16,"is_primary":true,"text":[{"text":"    Some::<i32>, fn(i32) -> Option<i32>, (5);","highlight_start":5,"highlight_end":16}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: inter
[00:58:08] 
[00:58:08] note: the compiler unexpectedly panicked. this is a bug.
[00:58:08] 
[00:58:08] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:58:08] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[00:58:08] 
[00:58:08] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[00:58:08] 
[00:58:08] note: compiler flags: -Z ui-testing -Z unstable-options -C prefer-dynamic -C rpath
[00:58:08] 
[00:58:08] ------------------------------------------
[00:58:08] 
[00:58:08] thread '[run-pass] run-pass/ufcs-polymorphic-paths.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
---
[00:58:08] 
[00:58:08] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:503:22
[00:58:08] 
[00:58:08] 
[00:58:08] command did not execute successfully: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage0-tools-bin/compiletest" "--compile-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib" "--run-lib-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "--rustc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "--src-base" "/checkout/src/test/run-pass" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "run-pass" "--target" "x86_64-unknown-linux-gnu" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/usr/lib/llvm-5.0/bin/FileCheck" "--host-rustcflags" "-Crpath -O -Zunstable-options " "--target-rustcflags" "-Crpath -O -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--docck-python" "/usr/bin/python2.7" "--lldb-python" "/usr/bin/python2.7" "--gdb" "/usr/bin/gdb" "--quiet" "--llvm-version" "5.0.0\n" "--system-llvm" "--cc" "" "--cxx" "" "--cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always"
[00:58:08] 
[00:58:08] 
[00:58:08] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[00:58:08] Build completed unsuccessfully in 0:12:15
[00:58:08] Build completed unsuccessfully in 0:12:15
[00:58:08] make: *** [check] Error 1
[00:58:08] Makefile:58: recipe for target 'check' failed
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:0ee97094
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Fri Nov 23 00:11:30 UTC 2018
---
travis_time:end:0059eac8:start=1542931891586816424,finish=1542931891594009028,duration=7192604
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:189d1110
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog\n\033[31;1m%s\033[0m\n" "$CORE"; gdb --batch -q -c "$CORE" "$EXE" -iex 'set auto-load off' -iex 'dir src/' -iex 'set sysroot .' -ex bt -ex q; echo travis_fold":"end:crashlog; fi; done || true
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:13193b09
travis_time:start:13193b09
$ 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:067adca8
$ 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)

@davidtwco davidtwco force-pushed the davidtwco:issue-54943 branch from 5069d62 to d27f344 Nov 23, 2018

@rust-highfive

This comment was marked as outdated.

Copy link
Collaborator

commented Nov 23, 2018

The job x86_64-gnu-llvm-5.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:06947127:start=1542970668331512763,finish=1542970731003464517,duration=62671951754
$ 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
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
[00:54:50] .................................................................................................... 100/5050
[00:54:54] .................................................................................................... 200/5050
[00:54:56] .............................ii............................................ii...................ii.. 300/5050
[00:54:59] ..............................................................................................iii... 400/5050
[00:55:02] .....iiiiiiii.iii............................iii...........................................i........ 500/5050
[00:55:09] .................................................................................................... 700/5050
[00:55:16] ...................................................................................i...........i.... 800/5050
[00:55:19] .................................................................................................... 900/5050
[00:55:23] ..iiiii..................ii.iiii.................................................................... 1000/5050
---
[00:55:59] .................................................................................................... 2200/5050
[00:56:03] .................................................................................................... 2300/5050
[00:56:07] .................................................................................................... 2400/5050
[00:56:11] .................................................................................................... 2500/5050
[00:56:15] ............................................................................................iiiiiiii 2600/5050
[00:56:22] ..........................................................ii........................................ 2800/5050
[00:56:25] .................................................................................................... 2900/5050
[00:56:29] .................................................................................................... 3000/5050
[00:56:32] .......................................................i............................................ 3100/5050
---
[01:04:37] .................................................................................................... 300/2886
[01:04:48] .................................................................................................... 400/2886
[01:04:57] .................................................................................................... 500/2886
[01:05:09] .................................................................................................... 600/2886
[01:05:26] ................F.FF................................................................................ 700/2886
[01:05:47] .................................................................................................... 900/2886
[01:06:03] .................................................................................................... 1000/2886
[01:06:16] .................................................................................................... 1100/2886
[01:06:25] .................................................................................................... 1200/2886
---
[01:10:38] failures:
[01:10:38] 
[01:10:38] ---- [run-pass (nll)] run-pass/drop/dropck-eyepatch-extern-crate.rs stdout ----
[01:10:38] 
[01:10:38] error: test compilation failed although it shouldn't!
[01:10:38] status: exit code: 101
[01:10:38] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch-extern-crate.nll/a" "-Zborrowck=mion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#4t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#6t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#6t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#8t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#8t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#11t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#11t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#13t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#13t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#18t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal coives: _#29t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#34t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#34t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#36t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#36t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#39t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"td inference variable in outlives: _#46t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#46t\n\n"}
[01:10:38] thread 'main' panicked at 'no errors encountered even though `delay_span_bug` issued', src/librustc_errors/lib.rs:334:17
[01:10:38] 
[01:10:38] error: internal compiler error: unexpected panic
[01:10:38] 
[01:10:38] note: the compiler unexpectedly panicked. this is a bug.
[01:10:38] note: the compiler unexpectedly panicked. this is a bug.
[01:10:38] 
[01:10:38] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[01:10:38] 
[01:10:38] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[01:10:38] 
[01:10:38] note: compiler flags: -Z ui-testing -Z borrowck=migrate -Z two-phase-borrows -Z unstable-options -C prefer-dynamic -C rpath
[01:10:38] 
[01:10:38] ------------------------------------------
[01:10:38] 
[01:10:38] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-extern-crate.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:10:38] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-extern-crate.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:10:38] note: Run with `RUST_BACKTRACE=1` for a backtraference variable in outlives: _#1t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#4t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#4t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#6t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#6t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#8t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#8t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#11t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#11t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#13t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#13t\n\n"}
[01:10:38] {"message":"unresolved infereer error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#29t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#34t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#34t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#36t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":n64-unknown-linux-gnu
[01:10:38] 
[01:10:38] note: compiler flags: -Z ui-testing -Z borrowck=migrate -Z two-phase-borrows -Z unstable-options -C prefer-dynamic -C rpath
[01:10:38] 
[01:10:38] ------------------------------------------
[01:10:38] 
[01:10:38] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-reorder.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:10:38] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-reorder.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:10:38] 
[01:10:38] ---- [run-pass (nll)] run-pass/drop/dropck-eyepatch.rs stdout ----
[01:10:38] 
[01:10:38] error: test compilation failed although it shouldn't!
[01:10:38] status: exit code: 101
[01:10:38] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/run-pass/drop/dropck-eyepatch.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch.nll/a" "-Zborrowck=migrate" "-Ztwo-phase-borrows" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch.nll/auxiliary"
[01:10:38] ------------------------------------------
[01:10:38] 
[01:10:38] ------------------------------------------
[01:10:38] stderr:
[01:10:38] stderr:
[01:10:38] ------------------------------------------
[01:10:38] {"message":"unresolved inference variable in outlives: _#1t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"bytevariable in outlives: _#6t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#8t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#8t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#11t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#11t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#13t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#13t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#18t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#18t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#20t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#20t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#22t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#22t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#25t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#25t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#27t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#27t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#29t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#29t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#34t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#34t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#36t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rsror: unresolved inference variable in outlives: _#41t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#43t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#43t\n\n"}
[01:10:38] {"message":"unresolved inference variable in outlives: _#46t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#46t\n\n"}
[01:10:38] thread 'main' panicked at 'no errors encountered even though `delay_span_bug` issued', src/librustc_errors/lib.rs:334:17
[01:10:38] 
[01:10:38] error: internal compiler error: unexpected panic
[01:10:38] 
[01:10:38] 
[01:10:38] note: the compiler uneunknown-linux-gnu/test/run-pass" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "run-pass" "--target" "x86_64-unknown-linux-gnu" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/usr/lib/llvm-5.0/bin/FileCheck" "--host-rustcflags" "-Crpath -O -Zunstable-options " "--target-rustcflags" "-Crpath -O -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--docck-python" "/usr/bin/python2.7" "--lldb-python" "/usr/bin/python2.7" "--gdb" "/usr/bin/gdb" "--quiet" "--llvm-version" "5.0.0\n" "--system-llvm" "--cc" "" "--cxx" "" "--cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always" "--compare-mode" "nll"
[01:10:38] 
[01:10:38] 
[01:10:38] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[01:10:38] Build completed unsuccessfully in 0:19:51
[01:10:38] Build completed unsuccessfully in 0:19:51
[01:10:38] Makefile:58: recipe for target 'check' failed
[01:10:38] make: *** [check] Error 1
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:091e8245
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Fri Nov 23 12:09:38 UTC 2018
---
travis_time:end:0743672b:start=1542974979946501731,finish=1542974979950461099,duration=3959368
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:128f73fa
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog

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)

@davidtwco davidtwco changed the title NLL doesn't check that user type annotations are well-formed in unreachable code NLL: User type annotations in unreachable code and associated constant patterns. Nov 24, 2018

@davidtwco

This comment has been minimized.

Copy link
Member Author

commented Nov 24, 2018

Added a fix for #55511 to this PR. Still seeing an ICE on three tests for the original fix, worked out that is due to this addition:

UserTypeAnnotation::Ty(ty) => {
self.prove_predicate(Predicate::WellFormed(ty));
Ok(())
},

But without that addition, the test change in src/test/ui/regions/regions-free-region-ordering-caller1.rs doesn't happen. Still working on it.

@rust-highfive

This comment was marked as outdated.

Copy link
Collaborator

commented Nov 24, 2018

The job x86_64-gnu-llvm-5.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:1b86a0f0:start=1543060738753816715,finish=1543060792051104991,duration=53297288276
$ 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
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
[00:52:49] .................................................................................................... 100/5052
[00:52:52] .................................................................................................... 200/5052
[00:52:55] .............................ii............................................ii...................ii.. 300/5052
[00:52:57] ..............................................................................................iii... 400/5052
[00:53:00] .....iiiiiiii.iii............................iii...........................................i........ 500/5052
[00:53:07] .................................................................................................... 700/5052
[00:53:13] ...................................................................................i...........i.... 800/5052
[00:53:17] .................................................................................................... 900/5052
[00:53:20] ..iiiii..................ii.iiii.................................................................... 1000/5052
---
[00:53:55] .................................................................................................... 2200/5052
[00:53:59] .................................................................................................... 2300/5052
[00:54:03] .................................................................................................... 2400/5052
[00:54:07] .................................................................................................... 2500/5052
[00:54:11] .............................................................................................iiiiiii 2600/5052
[00:54:18] ...........................................................ii....................................... 2800/5052
[00:54:20] .................................................................................................... 2900/5052
[00:54:24] .................................................................................................... 3000/5052
[00:54:27] ........................................................i........................................... 3100/5052
---
[01:02:20] .................................................................................................... 300/2886
[01:02:30] .................................................................................................... 400/2886
[01:02:39] .................................................................................................... 500/2886
[01:02:51] .................................................................................................... 600/2886
[01:03:07] ................FF.F................................................................................ 700/2886
[01:03:28] .................................................................................................... 900/2886
[01:03:43] .................................................................................................... 1000/2886
[01:03:56] .................................................................................................... 1100/2886
[01:04:04] .................................................................................................... 1200/2886
---
[01:08:13] failures:
[01:08:13] 
[01:08:13] ---- [run-pass (nll)] run-pass/drop/dropck-eyepatch-extern-crate.rs stdout ----
[01:08:13] 
[01:08:13] error: test compilation failed although it shouldn't!
[01:08:13] status: exit code: 101
[01:08:13] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch-extern-crate.nll/a" "-Zborrowck=mhighlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#4t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#6t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#6t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#8t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#8t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#11t","code":null,"level":"error: internal compiler error","spa/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#25t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#27t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#27t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#29t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":nuiler error: unresolved inference variable in outlives: _#43t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#46t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#46t\n\n"}
[01:08:13] thread 'main' panicked at 'no errors encountered even though `delay_span_bug` issued', src/librustc_errors/lib.rs:334:17
[01:08:13] 
[01:08:13] error: internal compiler error: unexpected panic
[01:08:13] 
[01:08:13] note: the compiler unexpectedly panicked. this is a bug.
[01:08:13] note: the compiler unexpectedly panicked. this is a bug.
[01:08:13] 
[01:08:13] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[01:08:13] 
[01:08:13] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[01:08:13] 
[01:08:13] note: compiler flags: -Z ui-testing -Z borrowck=migrate -Z two-phase-borrows -Z unstable-options -C prefer-dynamic -C rpath
[01:08:13] 
[01:08:13] ------------------------------------------
[01:08:13] 
[01:08:13] 
[01:08:13] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-extern-crate.rs' panicked at 'explicit panic', srcity":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#1t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#4t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#4t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#6t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#6t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#8t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0or: unresolved inference variable in outlives: _#13t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#18t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#18t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#20t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#20t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#22t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#22t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#25t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#25t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#27t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#27t\n\n"}
[01:08:13] {"mesl,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#6t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#8t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#8t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#11t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#11t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#13t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#13t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#18t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#18t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#20t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#20t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#22t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#22t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#25t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#25t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#27t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project D internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#36t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#39t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#39t\n\n"}
[01:08:13] {"message":"unresolved inference variable in outlives: _#41t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"sugunknown-linux-gnu/test/run-pass" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "run-pass" "--target" "x86_64-unknown-linux-gnu" "--host" "x86_64-unknown-linux-gnu" "--llvm-filecheck" "/usr/lib/llvm-5.0/bin/FileCheck" "--host-rustcflags" "-Crpath -O -Zunstable-options " "--target-rustcflags" "-Crpath -O -Zunstable-options  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--docck-python" "/usr/bin/python2.7" "--lldb-python" "/usr/bin/python2.7" "--gdb" "/usr/bin/gdb" "--quiet" "--llvm-version" "5.0.0\n" "--system-llvm" "--cc" "" "--cxx" "" "--cflags" "" "--llvm-components" "" "--llvm-cxxflags" "" "--adb-path" "adb" "--adb-test-dir" "/data/tmp/work" "--android-cross-path" "" "--color" "always" "--compare-mode" "nll"
[01:08:13] 
[01:08:13] 
[01:08:13] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[01:08:13] Build completed unsuccessfully in 0:19:23
[01:08:13] Build completed unsuccessfully in 0:19:23
[01:08:13] Makefile:58: recipe for target 'check' failed
[01:08:13] make: *** [check] Error 1
55812 ./obj/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release
53340 ./.git/modules/src/tools
51388 ./obj/build/x86_64-unknown-linux-gnu/stage0/bin
50128 ./src/llvm/test/CodeGen/X86

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

This comment was marked as resolved.

Copy link
Contributor

commented Nov 25, 2018

☔️ The latest upstream changes (presumably #55959) made this pull request unmergeable. Please resolve the merge conflicts.

@davidtwco davidtwco force-pushed the davidtwco:issue-54943 branch from bde1f0d to 874ebbe Nov 25, 2018

@davidtwco davidtwco changed the title NLL: User type annotations in unreachable code and associated constant patterns. NLL: User type annotations in unreachable code, associated constant patterns and ref bindings. Nov 25, 2018

@davidtwco

This comment has been minimized.

Copy link
Member Author

commented Nov 25, 2018

Added a fix for #55401 too. Yet to look into the failures for the original PR issue.

@davidtwco davidtwco force-pushed the davidtwco:issue-54943 branch from e73bf75 to 9cacc0c Nov 25, 2018

@rust-highfive

This comment was marked as outdated.

Copy link
Collaborator

commented Nov 25, 2018

The job x86_64-gnu-llvm-5.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:1a989a40:start=1543159432545645597,finish=1543159435126349343,duration=2580703746
$ 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
Setting environment variables from .travis.yml
$ export IMAGE=x86_64-gnu-llvm-5.0
---
[00:52:48] .................................................................................................... 100/5055
[00:52:51] .................................................................................................... 200/5055
[00:52:53] .............................ii............................................ii...................ii.. 300/5055
[00:52:56] ..............................................................................................iii... 400/5055
[00:52:59] .....iiiiiiii.iii............................iii...........................................i........ 500/5055
[00:53:06] .................................................................................................... 700/5055
[00:53:13] .....................................................................................i...........i.. 800/5055
[00:53:16] .................................................................................................... 900/5055
[00:53:20] ....iiiii..................ii.iiii.................................................................. 1000/5055
---
[01:02:38] .................................................................................................... 300/2886
[01:02:49] .................................................................................................... 400/2886
[01:02:58] .................................................................................................... 500/2886
[01:03:10] .................................................................................................... 600/2886
[01:03:26] ................F.FF................................................................................ 700/2886
[01:03:47] .................................................................................................... 900/2886
[01:04:02] .................................................................................................... 1000/2886
[01:04:16] .................................................................................................... 1100/2886
[01:04:24] .................................................................................................... 1200/2886
---
[01:08:40] failures:
[01:08:40] 
[01:08:40] ---- [run-pass (nll)] run-pass/drop/dropck-eyepatch-extern-crate.rs stdout ----
[01:08:40] 
[01:08:40] error: test compilation failed although it shouldn't!
[01:08:40] status: exit code: 101
[01:08:40] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch-extern-crate.nll/a" "-Zborrowck=migrate" "-Ztwo-phase-borrows" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch-extern-crate.nll/auxiliary"
[01:08:40] ------------------------------------------
[01:08:40] 
[01:08:40] ------------------------------------------
[01:08:40] stderr:
[01:08:40] stderr:
[01:08:40] ------------------------------------------
[01:08:40] {"message":"unresolved inference variable in outlives: _#1t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#1t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#4t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#4t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#6t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#6t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#8t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#8t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#11t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,mpiler error: unresolved inference variable in outlives: _#18t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#20t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#20t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#22t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#22t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#25t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_stext":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#39t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#41t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#41t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#43t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#43t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#46t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-extern-crate.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#46t\n\n"}
[01:08:40] thread 'main' panicked at 'no errors encountered even though `delay_span_bug` issued', src/librustc_errors/lib.rs:334:17
[01:08:40] 
[01:08:40] error: internal compiler error: unexpected panic
[01:08:40] 
[01:08:40] note: the compiler unexpectedly panicked. this is a bug.
[01:08:40] note: the compiler unexpectedly panicked. this is a bug.
[01:08:40] 
[01:08:40] note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
[01:08:40] 
[01:08:40] note: rustc 1.32.0-dev running on x86_64-unknown-linux-gnu
[01:08:40] 
[01:08:40] note: compiler flags: -Z ui-testing -Z borrowck=migrate -Z two-phase-borrows -Z unstable-options -C prefer-dynamic -C rpath
[01:08:40] 
[01:08:40] ------------------------------------------
[01:08:40] 
[01:08:40] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-extern-crate.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:08:40] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-extern-crate.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:08:40] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:08:40] 
[01:08:40] ---- [run-pass (nll)] run-pass/drop/dropck-eyepatch-reorder.rs stdout ----
[01:08:40] 
[01:08:40] error: test compilation failed although it shouldn't!
[01:08:40] status: exit code: 101
[01:08:40] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch-reorder.nll/a" "-Zborrowck=migrate" "-Ztwo-phase-borrows" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch-reorder.nll/auxiliary"
[01:08:40] ------------------------------------------
[01:08:40] 
[01:08:40] ------------------------------------------
[01:08:40] stderr:
[01:08:40] stderr:
[01:08:40] ------------------------------------------
[01:08:40] {"message":"unresolved inference variable in outlives: _#1t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inighlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#22t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#25t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#25t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#27t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#27t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#29t","code":null,"level":"error: internal compilull,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#36t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#39t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#39t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#41t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch-reorder.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#41t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#43t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eye64-unknown-linux-gnu
[01:08:40] 
[01:08:40] note: compiler flags: -Z ui-testing -Z borrowck=migrate -Z two-phase-borrows -Z unstable-options -C prefer-dynamic -C rpath
[01:08:40] 
[01:08:40] ------------------------------------------
[01:08:40] 
[01:08:40] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-reorder.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:08:40] thread '[run-pass (nll)] run-pass/drop/dropck-eyepatch-reorder.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:08:40] 
[01:08:40] ---- [run-pass (nll)] run-pass/drop/dropck-eyepatch.rs stdout ----
[01:08:40] 
[01:08:40] error: test compilation failed although it shouldn't!
[01:08:40] status: exit code: 101
[01:08:40] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/src/test/run-pass/drop/dropck-eyepatch.rs" "--target=x86_64-unknown-linux-gnu" "--error-format" "json" "-Zui-testing" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch.nll/a" "-Zborrowck=migrate" "-Ztwo-phase-borrows" "-Crpath" "-O" "-Zunstable-options" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/run-pass/drop/dropck-eyepatch.nll/auxiliary"
[01:08:40] ------------------------------------------
[01:08:40] 
[01:08:40] ------------------------------------------
[01:08:40] stderr:
[01:08:40] stderr:
[01:08:40] ------------------------------------------
[01:08:40] {"message":"unresolved inference variable in outlives: _#1t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#1t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#4t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#4t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#6t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#6t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#8t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#8t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#11t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#11t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#13t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 Thement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#27t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#29t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#29t\n\n"}
[01:08:40] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:503:22
[01:08:40] {"message":"unresolved inference variable in outlives: _#34t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#34t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#36t","code":null,"level":"error:gestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#41t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#43t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#43t\n\n"}
[01:08:40] {"message":"unresolved inference variable in outlives: _#46t","code":null,"level":"error: internal compiler error","spans":[{"file_name":"/checkout/src/test/run-pass/drop/dropck-eyepatch.rs","byte_start":0,"byte_end":0,"line_start":1,"line_end":1,"column_start":1,"column_end":1,"is_primary":true,"text":[{"text":"// Copyright 2016 The Rust Project Developers. See the COPYRIGHT","highlight_start":1,"highlight_end":1}],"label":null,"suggested_replacement":null,"suggestion_applicability":null,"expansion":null}],"children":[],"rendered":"error: internal compiler error: unresolved inference variable in outlives: _#46t\n\n"}
[01:08:40] thread 'main' panicked at 'no errors encountered even though `delay_span_bug` issued', src/librustc_errors/lib.rs:334:17
[01:08:40] 
[01:08:3824152 .
2532492 ./obj
2507008 ./obj/build
---
140912 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/x86_64-unknown-linux-gnu
140908 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/x86_64-unknown-linux-gnu/release
137964 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/x86_64-unknown-linux-gnu/release/deps
134660 ./obj/build/bootstrap/debug/incremental/bootstrap-1plb86h2refwc
134656 ./obj/build/bootstrap/debug/incremental/bootstrap-1plb86h2refwc/s-f705ploqqp-6pswaw-3bcgkskzxpex9
130764 ./obj/build/x86_64-unknown-linux-gnu/stage0-bootstrap-tools/x86_64-unknown-linux-gnu/release
127444 ./.git/modules
127440 ./.git/modules/src
123692 ./obj/build/x86_64-unknown-linux-gnu/stage0-bootstrap-tools/x86_64-unknown-linux-gnu/release/deps

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)

@Xanewok

This comment has been minimized.

Copy link
Member

commented Jan 2, 2019

I'm not sure I understand the fallout here.

   Compiling rls v1.31.6 (/home/xanewok/repos/rust/src/tools/rls)
error[E0621]: explicit lifetime required in the type of `msg`======> ] 245/246: rls(bin)
   --> src/tools/rls/src/server/mod.rs:185:21
    |
173 |       fn dispatch_message(&mut self, msg: &RawMessage) -> Result<(), jsonrpc::Error> {
    |                                           ----------- help: add explicit lifetime `'static` to the type of `msg`: `&'static server::message::RawMessage`
...
185 |                       <$n_action as LSPNotification>::METHOD => {
    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'static` required
...
259 | /         match_action!(
260 | |             msg.method;
261 | |             notifications:
262 | |                 notifications::Initialized,
...   |
287 | |                 requests::CodeLensRequest;
288 | |         );
    | |__________- in this macro invocation
error: aborting due to previous error

With $method being expanded to msg.method (which itself is of type String), we match on $method.as_str() and handle associated constants of type &'static str.

Indeed, matched value msg.method.as_str() will be of shorter lifetime (let's say &'a str) than the arms (associated constants of &'static str type) but I don't understand why that's an error. Shouldn't it be the other way around, that the match arms should live at least as long as the matched value? Am I missing something?

Xanewok added a commit to Xanewok/rls that referenced this pull request Jan 2, 2019

Work around rust-lang/rust#55937
This exchanges a compilation error for a warning-but-future-error
but at least it compiles now and I'm not exactly sure how to fix it
without cloning those `METHOD` constants on every match (which is less
than ideal, to say the least).
@nikomatsakis

This comment has been minimized.

Copy link
Contributor

commented Jan 2, 2019

I filed #57280, as this seems like a bug (and a regression).

Xanewok added a commit to rust-lang/rls that referenced this pull request Jan 2, 2019

Xanewok added a commit to Xanewok/rust that referenced this pull request Jan 2, 2019

Unbreak the RLS
Breakage was due to rust-lang#55937,
which seemed to introduce a regression (tracked over at
rust-lang#57280).

@Xanewok Xanewok referenced this pull request Jan 2, 2019

Closed

Unbreak the RLS #57285

@davidtwco davidtwco deleted the davidtwco:issue-54943 branch Jan 3, 2019

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 3, 2019

submodules: update rls from 6f5e4bb to 300905b
Changes:
````
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around rust-lang#55937
Update Clippy... again
Update Clippy
Update clippy
````

Also remove rustc_tools_util patching from Cargo.toml

bors added a commit that referenced this pull request Jan 3, 2019

Auto merge of #57303 - matthiaskrgr:clippy_submodule_upd, r=oli-obk
submodules: update clippy and rls

Fixes clippy toolstate

Changes:
````
Update to latest compiletest-rs release
add testcase for #3462
deps: bump rustc_tools_util version from 0.1.0 to 0.1.1 just in case...
rustc_tool_utils: fix failure to create proper non-repo version string when used in crates on crates.io, bump version
UI test cleanup: Extract ifs_same_cond tests
UI test cleanup: Extract for_kv_map lint tests
Fix test for #57250
Limit infinite_iter collect() check to known types
Some improvements to util documentation
Use hashset for name blacklist
Reformat random_state tests
Use node_id_to_type_opt instead of node_it_to_type in random_state
Check pattern equality while checking declaration equality
random_state lint
Use an FxHashSet for valid idents in documentation lint
Fix suggestion for unnecessary_ref lint
Update CONTRIBUTING.md for rustfix tests
Update .fixed files via update-references.sh
Run rustfix on first UI test
Use WIP branch for compiletest_rs
````

Also updates RLS and removes the patching of rustc_tool_utils from cargo.toml

RLS changes:
````
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around #55937
Update Clippy... again
Update Clippy
Update clippy
````
r? @oli-obk

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 4, 2019

submodules: update rls from 6f5e4bb to 300905b
Changes:
````
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around rust-lang#55937
Update Clippy... again
Update Clippy
Update clippy
````

Also remove rustc_tools_util patching from Cargo.toml

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 4, 2019

submodules: update rls from 6f5e4bb to 300905b
Changes:
````
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around rust-lang#55937
Update Clippy... again
Update Clippy
Update clippy
````

Also remove rustc_tools_util patching from Cargo.toml

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 4, 2019

submodules: update rls from 6f5e4bb to 300905b
Changes:
````
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around rust-lang#55937
Update Clippy... again
Update Clippy
Update clippy
````

Also remove rustc_tools_util patching from Cargo.toml

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 4, 2019

submodules: update rls from 6f5e4bb to 300905b
Changes:
````
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around rust-lang#55937
Update Clippy... again
Update Clippy
Update clippy
````

Also remove rustc_tools_util patching from Cargo.toml

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 5, 2019

submodules: update rls from 6f5e4bb to 1a6361b
Changes:
````
Update Clippy
Move TestFailures when collecting failures
Update languageserver-types to 0.51.1
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around rust-lang#55937
Update Clippy... again
Update Clippy
Update clippy
````

bors added a commit that referenced this pull request Jan 5, 2019

Auto merge of #57303 - matthiaskrgr:clippy_submodule_upd, r=kennytm
submodules: update clippy and rls

Fixes clippy toolstate

Changes:
````
Update to latest compiletest-rs release
add testcase for #3462
deps: bump rustc_tools_util version from 0.1.0 to 0.1.1 just in case...
rustc_tool_utils: fix failure to create proper non-repo version string when used in crates on crates.io, bump version
UI test cleanup: Extract ifs_same_cond tests
UI test cleanup: Extract for_kv_map lint tests
Fix test for #57250
Limit infinite_iter collect() check to known types
Some improvements to util documentation
Use hashset for name blacklist
Reformat random_state tests
Use node_id_to_type_opt instead of node_it_to_type in random_state
Check pattern equality while checking declaration equality
random_state lint
Use an FxHashSet for valid idents in documentation lint
Fix suggestion for unnecessary_ref lint
Update CONTRIBUTING.md for rustfix tests
Update .fixed files via update-references.sh
Run rustfix on first UI test
Use WIP branch for compiletest_rs
````

Also updates RLS and removes the patching of rustc_tool_utils from cargo.toml

RLS changes:
````
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around #55937
Update Clippy... again
Update Clippy
Update clippy
````
r? @oli-obk

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 6, 2019

submodules: update rls from 6f5e4bb to 1a6361b
Changes:
````
Update Clippy
Move TestFailures when collecting failures
Update languageserver-types to 0.51.1
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around rust-lang#55937
Update Clippy... again
Update Clippy
Update clippy
````

matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Jan 7, 2019

submodules: update rls from 6f5e4bb to 1a6361b
Changes:
````
Update Clippy
Move TestFailures when collecting failures
Update languageserver-types to 0.51.1
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around rust-lang#55937
Update Clippy... again
Update Clippy
Update clippy
````

bors added a commit that referenced this pull request Jan 7, 2019

Auto merge of #57303 - matthiaskrgr:clippy_submodule_upd, r=oli-obk
submodules: update clippy and rls

Fixes clippy toolstate

Changes:
````
Update to latest compiletest-rs release
add testcase for #3462
deps: bump rustc_tools_util version from 0.1.0 to 0.1.1 just in case...
rustc_tool_utils: fix failure to create proper non-repo version string when used in crates on crates.io, bump version
UI test cleanup: Extract ifs_same_cond tests
UI test cleanup: Extract for_kv_map lint tests
Fix test for #57250
Limit infinite_iter collect() check to known types
Some improvements to util documentation
Use hashset for name blacklist
Reformat random_state tests
Use node_id_to_type_opt instead of node_it_to_type in random_state
Check pattern equality while checking declaration equality
random_state lint
Use an FxHashSet for valid idents in documentation lint
Fix suggestion for unnecessary_ref lint
Update CONTRIBUTING.md for rustfix tests
Update .fixed files via update-references.sh
Run rustfix on first UI test
Use WIP branch for compiletest_rs
````

Also updates RLS and removes the patching of rustc_tool_utils from cargo.toml

RLS changes:
````
update clippy hash and rustc_tools_util and use rustc_tools_util from crates.io
Work around #55937
Update Clippy... again
Update Clippy
Update clippy
````
r? @oli-obk

davidtwco added a commit to davidtwco/rust that referenced this pull request Feb 4, 2019

Lower constant patterns with ascribed types.
This commit fixes a bug introduced by rust-lang#55937 which started checking user
type annotations for associated type patterns. Where lowering a
associated constant expression would previously return a
`PatternKind::Constant`, it now returns a `PatternKind::AscribeUserType`
with a `PatternKind::Constant` inside, this commit unwraps that to
access the constant pattern inside and behaves as before.

davidtwco added a commit to davidtwco/rust that referenced this pull request Feb 6, 2019

Lower constant patterns with ascribed types.
This commit fixes a bug introduced by rust-lang#55937 which started checking user
type annotations for associated type patterns. Where lowering a
associated constant expression would previously return a
`PatternKind::Constant`, it now returns a `PatternKind::AscribeUserType`
with a `PatternKind::Constant` inside, this commit unwraps that to
access the constant pattern inside and behaves as before.

bors added a commit that referenced this pull request Feb 8, 2019

Auto merge of #58161 - davidtwco:issue-57960, r=arielb1
Lower constant patterns with ascribed types.

Fixes #57960.

This PR fixes a bug introduced by #55937 which started checking user
type annotations for associated type patterns. Where lowering a
associated constant expression would previously return a
`PatternKind::Constant`, it now returns a `PatternKind::AscribeUserType`
with a `PatternKind::Constant` inside, this PR unwraps that to
access the constant pattern inside and behaves as before.

r? @pnkfelix

bors added a commit that referenced this pull request Feb 8, 2019

Auto merge of #58161 - davidtwco:issue-57960, r=arielb1
Lower constant patterns with ascribed types.

Fixes #57960.

This PR fixes a bug introduced by #55937 which started checking user
type annotations for associated type patterns. Where lowering a
associated constant expression would previously return a
`PatternKind::Constant`, it now returns a `PatternKind::AscribeUserType`
with a `PatternKind::Constant` inside, this PR unwraps that to
access the constant pattern inside and behaves as before.

r? @pnkfelix

h-michael added a commit to h-michael/rust that referenced this pull request Feb 9, 2019

Auto merge of rust-lang#58161 - davidtwco:issue-57960, r=arielb1
Lower constant patterns with ascribed types.

Fixes rust-lang#57960.

This PR fixes a bug introduced by rust-lang#55937 which started checking user
type annotations for associated type patterns. Where lowering a
associated constant expression would previously return a
`PatternKind::Constant`, it now returns a `PatternKind::AscribeUserType`
with a `PatternKind::Constant` inside, this PR unwraps that to
access the constant pattern inside and behaves as before.

r? @pnkfelix

pietroalbini added a commit to pietroalbini/rust that referenced this pull request Feb 17, 2019

Lower constant patterns with ascribed types.
This commit fixes a bug introduced by rust-lang#55937 which started checking user
type annotations for associated type patterns. Where lowering a
associated constant expression would previously return a
`PatternKind::Constant`, it now returns a `PatternKind::AscribeUserType`
with a `PatternKind::Constant` inside, this commit unwraps that to
access the constant pattern inside and behaves as before.

pietroalbini added a commit to pietroalbini/rust that referenced this pull request Feb 17, 2019

Lower constant patterns with ascribed types.
This commit fixes a bug introduced by rust-lang#55937 which started checking user
type annotations for associated type patterns. Where lowering a
associated constant expression would previously return a
`PatternKind::Constant`, it now returns a `PatternKind::AscribeUserType`
with a `PatternKind::Constant` inside, this commit unwraps that to
access the constant pattern inside and behaves as before.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.