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

WIP: Modify doctest's auto-`fn main()` to allow `Result`s #56470

Open
wants to merge 2 commits into
base: master
from

Conversation

@llogiq
Contributor

llogiq commented Dec 3, 2018

This lets the default fn main() return impl Termination, which allows the use of ? in most tests without adding it manually. This fixes #56260

Blocked on std::process::Termination stabilization.

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Dec 3, 2018

r? @GuillaumeGomez

(rust_highfive has picked a reviewer for you, use r? to override)

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Dec 3, 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:00100170:start=1543858007986963562,finish=1543858090536406074,duration=82549442512
$ 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
---
travis_time:start:test_codegen
Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:58:03] 
[00:58:03] running 120 tests
[00:58:06] i..ii...iii..iiii.....i...i..........i..iii.............i.....i.....ii...i..i.ii..............i...ii 100/120
[00:58:06] ..ii.i.....iiii.....
[00:58:06] 
[00:58:06]  finished in 3.577
[00:58:06] travis_fold:end:test_codegen

---
travis_time:start:test_debuginfo
Check compiletest suite=debuginfo mode=debuginfo-both (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:58:22] 
[00:58:22] running 118 tests
[00:58:47] .iiiii...i.....i..i...i..i.i..i.i..i.....i..i....i..........iiii.........i.i....i...i.......ii.i.i.i 100/118
[00:58:51] ......iii.i.....ii
[00:58:51] 
[00:58:51]  finished in 29.202
[00:58:51] travis_fold:end:test_debuginfo

---
travis_time:start:test_rustdoc
Check compiletest suite=rustdoc mode=rustdoc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[01:03:59] 
[01:03:59] running 277 tests
[01:05:08] .......................i.......F.................................................................... 100/277
[01:06:06] ......................F.....F...i........F.....................F.................................... 200/277
[01:06:51] test /checkout/src/test/rustdoc/edition-doctest.rs - foo (line 13) ... FAILED
[01:06:51] test /checkout/src/test/rustdoc/edition-doctest.rs - foo (line 32) ... ok
[01:06:51] failures:
[01:06:51] 
[01:06:51] ---- /checkout/src/test/rustdoc/edition-doctest.rs - foo (line 13) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]  --> /checkout/src/test/rustdoc/edition-doctest.rs:15:19
[01:06:51]   |
[01:06:51] 4 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/edition-doctest.rs - foo (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:06:51] 
[01:06:51] 
---
[01:06:51] ---- [rustdoc] rustdoc/issue-23106.rs stdout ----
[01:06:51] 
[01:06:51] error: rustdoc failed!
[01:06:51] status: exit code: 101
[01:06:51] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106" "/checkout/src/test/rustdoc/issue-23106.rs" "--test"
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] running 1 test
[01:06:51] test /checkout/src/test/rustdoc/issue-23106.rs - main (line 13) ... FAILED
---
[01:06:51]   |
[01:06:51] 2 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/issue-23106.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:06:51] 
[01:06:51] 
---
[01:06:51] ---- [rustdoc] rustdoc/issue-25944.rs stdout ----
[01:06:51] 
[01:06:51] error: rustdoc failed!
[01:06:51] status: exit code: 101
[01:06:51] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-25944/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-25944" "/checkout/src/test/rustdoc/issue-25944.rs" "--test"
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] running 1 test
[01:06:51] test /checkout/src/test/rustdoc/issue-25944.rs - main (line 13) ... FAILED
---
[01:06:51]   |
[01:06:51] 2 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/issue-25944.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:06:51] 
[01:06:51] 
---
[01:06:51] ---- [rustdoc] rustdoc/issue-30252.rs stdout ----
[01:06:51] 
[01:06:51] error: rustdoc failed!
[01:06:51] status: exit code: 101
[01:06:51] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252" "/checkout/src/test/rustdoc/issue-30252.rs" "--test" "--cfg" "feature=\"bar\""
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] running 1 test
[01:06:51] running 1 test
[01:06:51] testinux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129" "/checkout/src/test/rustdoc/issue-38129.rs" "--test"
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] running 5 tests
[01:06:51] test /checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51) ... FAILED
---
[01:06:51]   |
[01:06:51] 3 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:06:51] 
[01:06:51] ---- /checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25) stdout ----
[01:06:51] ---- /checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]  --> /checkout/src/test/rustdoc/issue-38129.rs:26:19
[01:06:51]   |
[01:06:51] 3 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] 
[01:06:51] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]  --> /checkout/src/test/rustdoc/issue-38129.rs:59:19
[01:06:51]   |
[01:06:51] 4 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] 
[01:06:51] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]  --> /checkout/src/test/rustdoc/issue-38129.rs:86:19
[01:06:51]   |
[01:06:51] 4 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] 
[01:06:51] ---- /checkout/src/test/rustdoc/issue-38129.rs - simple (line 20) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]  --> /checkout/src/test/rustdoc/issue-38129.rs:20:19
[01:06:51]   |
[01:06:51] 2 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/issue-38129.rs - simple (line 20)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] 
[01:06:51] 
[01:06:51] failures:
---
[01:06:51] thread '[rustdoc] rustdoc/issue-38129.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:06:51] 
[01:06:51] ---- [rustdoc] rustdoc/playground-arg.rs stdout ----
[01:06:51] 
[01:06:51] error: htmldocck failed!
[01:06:51] status: exit code: 1
[01:06:51] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground-arg" "/checkout/src/test/rustdoc/playground-arg.rs"
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] ------------------------------------------
[01:06:51] stderr:
[01:06:51] stderr:
[01:06:51] ------------------------------------------
[01:06:51] 24: @matches check failed
[01:06:51]  `XPATH PATTERN` did not match
[01:06:51]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://example.com/?code=%23!%5Ballow(unused)%5D%0Aextern%20crate%20foo%3B%0Afn%20main()%20%7B%0Ause%20foo%3A%3Adummy%3B%0Adummy()%3B%0A%7D"]' "Run"
[01:06:51] Encountered 1 errors
[01:06:51] 
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] 
[01:06:51] thread '[rustdoc] rustdoc/playground-arg.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:06:51] 
[01:06:51] ---- [rustdoc] rustdoc/playground.rs stdout ----
[01:06:51] 
[01:06:51] error: htmldocck failed!
[01:06:51] status: exit code: 1
[01:06:51] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground" "/checkout/src/test/rustdoc/playground.rs"
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] ------------------------------------------
[01:06:51] stderr:
[01:06:51] stderr:
[01:06:51] ------------------------------------------
[01:06:51] 38: @matches check failed
[01:06:51]  `XPATH PATTERN` did not match
[01:06:51]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://www.example.com/?code=%23!%5Ballow(unused)%5D%0Afn%20main()%20%7B%0Aprintln!(%22Hello%2C%20world!%22)%3B%0A%7D"]' "Run"
[01:06:51] Encountered 1 errors
[01:06:51] 
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] 
[01:06:51] thread '[rustdoc] rustdoc/playground.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:06:51] 
[01:06:51] ---- [rustdoc] rustdoc/test_option_check/bar.rs stdout ----
[01:06:51] 
[01:06:51] error: rustdoc failed!
[01:06:51] status: exit code: 101
[01:06:51] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar" "/checkout/src/test/rustdoc/test_option_check/bar.rs" "--test"
[01:06:51] stdout:
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] running 1 test
[01:06:51] running 1 test
[01:06:51] test /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) ... FAILED
[01:06:51] failures:
[01:06:51] 
[01:06:51] 
[01:06:51] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]   |
[01:06:51] 2 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] 
[01:06:51] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] 
[01:06:51] 
[01:06:51] failures:
[01:06:51] failures:
[01:06:51]     /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)
[01:06:51] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
[01:06:51] 
[01:06:51] 
[01:06:51] ------------------------------------------
---
[01:06:51] stdout:
[01:06:51] ------------------------------------------
[01:06:51] 
[01:06:51] running 3 tests
[01:06:51] test /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) ... FAILED
[01:06:51] test /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) ... FAILED
[01:06:51] test /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) ... FAILED
[01:06:51] failures:
[01:06:51] 
[01:06:51] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:25:19
[01:06:51]   |
[01:06:51] 2 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:06:51] 
[01:06:51] 
[01:06:51] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]   |
[01:06:51] 2 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] 
[01:06:51] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) stdout ----
[01:06:51] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:06:51]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:18:19
[01:06:51]   |
[01:06:51]   |
[01:06:51] 2 | fn main() -> impl std::process::Termination {
[01:06:51]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:06:51]   |
[01:06:51]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:06:51] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:06:51] 
[01:06:51] 
[01:06:51] failures:
[01:06:51] failures:
[01:06:51]     /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16)
[01:06:51]     /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25)
[01:06:51]     /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18)
[01:06:51] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out
[01:06:51] 
[01:06:51] 
[01:06:51] ------------------------------------------
---
[01:06:51] test result: FAILED. 266 passed; 9 failed; 2 ignored; 0 measured; 0 filtered out
[01:06:51] 
[01:06:51] 
[01:06:51] 
[01:06:51] 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" "--rustdoc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "--src-base" "/checkout/src/test/rustdoc" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "rustdoc" "--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  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--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"
[01:06:51] 
[01:06:51] 
[01:06:52] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[01:06:52] Build completed unsuccessfully in 0:20:03
[01:06:52] Build completed unsuccessfully in 0:20:03
[01:06:52] Makefile:58: recipe for target 'check' failed
[01:06:52] make: *** [check] Error 1
55944 ./obj/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu
55940 ./obj/build/x86_64-unknown-linux-gnu/stage1-std/x86_64-unknown-linux-gnu/release
55732 ./obj/build/x86_64-unknown-linux-gnu/test/run-pass/proc-macro
53856 ./.git/modules/src/tools
---
travis_time:end:06c230a0:start=1543862115113998655,finish=1543862115120106039,duration=6107384
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:2ee008b1
$ 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:11883c00
travis_time:start:11883c00
$ 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:0809bef0
$ 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)

/// Papercut: Turbofish to fully specify type
///
/// ```rust
/// Result::Ok::<(), &'static str>(())

This comment has been minimized.

@cramertj

cramertj Dec 3, 2018

Member

cc #56225 @alexreg @petrochenkov @eddyb I use Ok::<...> for this reason all the time (at the end of a closure, async closure, try block, etc. something that needs to an inference hint for the error type). In some of these cases it's possible to replace w/ let x: Result<_, ErrorTy> = ... but not all-- this PR is one example of where it's not possible (it is, of course, still possible to write Result::<..., ErrorTy>::Ok but that's a good bit more verbose).

This comment has been minimized.

@cramertj

cramertj Dec 3, 2018

Member

I should say that I wanted to leave this comment on this issue rather than a separate issue or chat because I wanted to make sure that we avoid recommending that users use a syntax that we're not planning on supporting long-term. I personally use this syntax pretty often already and so would be upset by its removal.

This comment has been minimized.

@eddyb

eddyb Dec 3, 2018

Member

Variant::<...> is not going anywhere. Enum::Variant::<...> is the mistake we made, we should've moved to Enum::<...>::Variant, and ideally base it on <Enum<...>>::Variant.
But when there's a single path component, it makes sense to stuck all the parameters on there, IMO.

This comment has been minimized.

@alexreg

alexreg Dec 3, 2018

Contributor

Yeah, I agree, it makes sense... but only in the case of single-component paths. In any case, we're not breaking anything for now; it will all be accepted, though the plan is to lint against Enum::Variant::<...> in the future.

/// It's all good as long as both cases exist in the code:
///
/// ```rust,should_panic
/// Result::Err("This is returned from `main`, leading to panic")?;

This comment has been minimized.

@cramertj

cramertj Dec 3, 2018

Member

Nit: Err is in the prelude

/// Papercut: Turbofish to fully specify type
///
/// ```rust
/// Result::Ok::<(), &'static str>(())

This comment has been minimized.

@cramertj

cramertj Dec 3, 2018

Member

nit: Ok is in the prelude

@llogiq llogiq force-pushed the llogiq:process-termination-doctest branch from 7486014 to 07b4f34 Dec 3, 2018

@llogiq

This comment has been minimized.

Contributor

llogiq commented Dec 3, 2018

@cramertj Thank you for spotting this. Fixed the Result.:*s in the test.

@llogiq

This comment has been minimized.

Contributor

llogiq commented Dec 3, 2018

One problem I'm seeing here is that this doesn't have a proper feature gate: Rust tells me it's gated on termination_trait_lib, yet libsyntax/feature_gate.rs has no such definition. An error?

@ollie27

This comment has been minimized.

Contributor

ollie27 commented Dec 3, 2018

@llogiq library features aren't listed in libsyntax/feature_gate.rs, they're taken from the attributes on items:

#[unstable(feature = "termination_trait_lib", issue = "43301")]

// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.

This comment has been minimized.

@ollie27

ollie27 Dec 3, 2018

Contributor
Suggested change Beta
// compile-flags:--test

will be needed to actually run the examples as doctests.

This comment has been minimized.

@llogiq

llogiq Dec 3, 2018

Contributor

Cool! Thank you!

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Dec 3, 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:06053a2a:start=1543870099148110190,finish=1543870154643389042,duration=55495278852
$ 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
---
travis_time:start:test_codegen
Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:55:37] 
[00:55:37] running 120 tests
[00:55:40] i..ii...iii..iiii.....i...i..........i..iii.............i.....i.....ii...i..i.ii..............i...ii 100/120
[00:55:41] ..ii.i.....iiii.....
[00:55:41] 
[00:55:41]  finished in 3.466
[00:55:41] travis_fold:end:test_codegen

---
travis_time:start:test_debuginfo
Check compiletest suite=debuginfo mode=debuginfo-both (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:55:56] 
[00:55:56] running 118 tests
[00:56:19] .iiiii...i.....i..i...i..i.i..i.i..i.....i..i....i..........iiii.........i.i....i...i.......ii.i.i.i 100/118
[00:56:24] ......iii.i.....ii
[00:56:24] 
[00:56:24]  finished in 28.118
[00:56:24] travis_fold:end:test_debuginfo

---
travis_time:start:test_rustdoc
Check compiletest suite=rustdoc mode=rustdoc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[01:01:16] 
[01:01:16] running 277 tests
[01:02:21] .......................i........F................................................................... 100/277
[01:03:15] ......................F.....F...i........F.....................F.................................... 200/277
[01:03:58] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:503:22
[01:03:58] ...............F..F.....................................FF...................
[01:03:58] 
[01:03:58] ---- [rustdoc] rustdoc/edition-doctest.rs stdout ----
[01:03:58] 
[01:03:58] error: rustdoc failed!
---
[01:03:58]   |
[01:03:58] 4 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/edition-doctest.rs - foo (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:58] 
[01:03:58] 
---
[01:03:58] ---- [rustdoc] rustdoc/issue-23106.rs stdout ----
[01:03:58] 
[01:03:58] error: rustdoc failed!
[01:03:58] status: exit code: 101
[01:03:58] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106" "/checkout/src/test/rustdoc/issue-23106.rs" "--test"
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] running 1 test
[01:03:58] test /checkout/src/test/rustdoc/issue-23106.rs - main (line 13) ... FAILED
---
[01:03:58]   |
[01:03:58] 2 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/issue-23106.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:58] 
[01:03:58] 
---
[01:03:58] ---- [rustdoc] rustdoc/issue-25944.rs stdout ----
[01:03:58] 
[01:03:58] error: rustdoc failed!
[01:03:58] status: exit code: 101
[01:03:58] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-25944/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-25944" "/checkout/src/test/rustdoc/issue-25944.rs" "--test"
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] running 1 test
[01:03:58] test /checkout/src/test/rustdoc/issue-25944.rs - main (line 13) ... FAILED
---
[01:03:58]   |
[01:03:58] 2 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/issue-30252.rs - foo (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:58] 
[01:03:58] 
---
[01:03:58] ---- [rustdoc] rustdoc/issue-38129.rs stdout ----
[01:03:58] 
[01:03:58] error: rustdoc failed!
[01:03:58] status: exit code: 101
[01:03:58] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129" "/checkout/src/test/rustdoc/issue-38129.rs" "--test"
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] running 5 tests
[01:03:58] test /checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51) ... FAILED
---
[01:03:58]   |
[01:03:58] 3 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:58] 
[01:03:58] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84) stdout ----
[01:03:58] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84) stdout ----
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58]  --> /checkout/src/test/rustdoc/issue-38129.rs:86:19
[01:03:58]   |
[01:03:58] 4 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] 
[01:03:58] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57) stdout ----
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58]  --> /checkout/src/test/rustdoc/issue-38129.rs:59:19
[01:03:58]   |
[01:03:58] 4 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] 
[01:03:58] ---- /checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25) stdout ----
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58]  --> /checkout/src/test/rustdoc/issue-38129.rs:26:19
[01:03:58]   |
[01:03:58] 3 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] 
[01:03:58] ---- /checkout/src/test/rustdoc/issue-38129.rs - simple (line 20) stdout ----
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58]  --> /checkout/src/test/rustdoc/issue-38129.rs:20:19
[01:03:58]   |
[01:03:58] 2 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/issue-38129.rs - simple (line 20)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] 
[01:03:58] 
[01:03:58] failures:
---
[01:03:58] thread '[rustdoc] rustdoc/issue-38129.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:03:58] 
[01:03:58] ---- [rustdoc] rustdoc/playground-arg.rs stdout ----
[01:03:58] 
[01:03:58] error: htmldocck failed!
[01:03:58] status: exit code: 1
[01:03:58] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground-arg" "/checkout/src/test/rustdoc/playground-arg.rs"
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] ------------------------------------------
[01:03:58] stderr:
[01:03:58] stderr:
[01:03:58] ------------------------------------------
[01:03:58] 24: @matches check failed
[01:03:58]  `XPATH PATTERN` did not match
[01:03:58]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://example.com/?code=%23!%5Ballow(unused)%5D%0Aextern%20crate%20foo%3B%0Afn%20main()%20%7B%0Ause%20foo%3A%3Adummy%3B%0Adummy()%3B%0A%7D"]' "Run"
[01:03:58] Encountered 1 errors
[01:03:58] 
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] 
[01:03:58] thread '[rustdoc] rustdoc/playground-arg.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:03:58] 
[01:03:58] ---- [rustdoc] rustdoc/playground.rs stdout ----
[01:03:58] 
[01:03:58] error: htmldocck failed!
[01:03:58] status: exit code: 1
[01:03:58] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground" "/checkout/src/test/rustdoc/playground.rs"
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] ------------------------------------------
[01:03:58] stderr:
[01:03:58] stderr:
[01:03:58] ------------------------------------------
[01:03:58] 38: @matches check failed
[01:03:58]  `XPATH PATTERN` did not match
[01:03:58]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://www.example.com/?code=%23!%5Ballow(unused)%5D%0Afn%20main()%20%7B%0Aprintln!(%22Hello%2C%20world!%22)%3B%0A%7D"]' "Run"
[01:03:58] Encountered 1 errors
[01:03:58] 
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] 
[01:03:58] thread '[rustdoc] rustdoc/playground.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:03:58] 
[01:03:58] ---- [rustdoc] rustdoc/test_option_check/bar.rs stdout ----
[01:03:58] 
[01:03:58] error: rustdoc failed!
[01:03:58] status: exit code: 101
[01:03:58] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar" "/checkout/src/test/rustdoc/test_option_check/bar.rs" "--test"
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] running 1 test
[01:03:58] running 1 test
[01:03:58] test /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) ... FAILED
[01:03:58] failures:
[01:03:58] 
[01:03:58] 
[01:03:58] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) stdout ----
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58]   |
[01:03:58] 2 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] 
[01:03:58] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] 
[01:03:58] 
[01:03:58] failures:
[01:03:58] failures:
[01:03:58]     /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)
[01:03:58] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
[01:03:58] 
[01:03:58] 
[01:03:58] ------------------------------------------
---
[01:03:58] stdout:
[01:03:58] ------------------------------------------
[01:03:58] 
[01:03:58] running 3 tests
[01:03:58] test /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) ... FAILED
[01:03:58] test /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) ... FAILED
[01:03:58] test /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) ... FAILED
[01:03:58] failures:
[01:03:58] 
[01:03:58] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) stdout ----
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:18:19
[01:03:58]   |
[01:03:58] 2 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:58] 
[01:03:58] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) stdout ----
[01:03:58] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) stdout ----
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:25:19
[01:03:58]   |
[01:03:58] 2 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] 
[01:03:58] 
[01:03:58] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) stdout ----
[01:03:58] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:58]   |
[01:03:58] 2 | fn main() -> impl std::process::Termination {
[01:03:58]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:58]   |
[01:03:58]   |
[01:03:58]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:58] 
[01:03:58] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:03:58] 
[01:03:58] failures:
[01:03:58] failures:
[01:03:58]     /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16)
[01:03:58]     /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25)
[01:03:58]     /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18)
[01:03:58] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out
[01:03:58] 
[01:03:58] 
[01:03:58] ------------------------------------------
---
[01:03:58] test result: FAILED. 266 passed; 9 failed; 2 ignored; 0 measured; 0 filtered out
[01:03:58] 
[01:03:58] 
[01:03:58] 
[01:03:58] 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" "--rustdoc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "--src-base" "/checkout/src/test/rustdoc" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "rustdoc" "--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  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--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"
[01:03:58] 
[01:03:58] 
[01:03:58] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[01:03:58] Build completed unsuccessfully in 0:18:57
[01:03:58] Build completed unsuccessfully in 0:18:57
[01:03:58] Makefile:58: recipe for target 'check' failed
[01:03:58] make: *** [check] Error 1
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:14a7b07c
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Mon Dec  3 21:53:21 UTC 2018
---
travis_time:end:0188c180:start=1543874004086932460,finish=1543874004152802870,duration=65870410
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:0a0c4118
$ 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:06cbeea8
$ 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)

@llogiq llogiq force-pushed the llogiq:process-termination-doctest branch from 07b4f34 to 6a95bc2 Dec 3, 2018

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Dec 3, 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:1ff2a8d5:start=1543876727250016245,finish=1543876786163502264,duration=58913486019
$ 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
---
travis_time:start:test_codegen
Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:55:33] 
[00:55:33] running 120 tests
[00:55:36] i..ii...iii..iiii.....i...i..........i..iii.............i.....i.....ii...i..i.ii..............i...ii 100/120
[00:55:36] ..ii.i.....iiii.....
[00:55:36] 
[00:55:36]  finished in 3.569
[00:55:36] travis_fold:end:test_codegen

---
travis_time:start:test_debuginfo
Check compiletest suite=debuginfo mode=debuginfo-both (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:55:51] 
[00:55:51] running 118 tests
[00:56:15] .iiiii...i.....i..i...i..i.i..i.i..i.....i..i....i..........iiii.........i.i....i...i.......ii.i.i.i 100/118
[00:56:19] ......iii.i.....ii
[00:56:19] 
[00:56:19]  finished in 27.731
[00:56:19] travis_fold:end:test_debuginfo

---
travis_time:start:test_rustdoc
Check compiletest suite=rustdoc mode=rustdoc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[01:01:17] 
[01:01:17] running 277 tests
[01:02:24] .......................i........F................................................................... 100/277
[01:03:19] ......................F.....F...i........F.....................F.................................... 200/277
[01:04:02] ...............F..F.....................................FF...................
[01:04:02] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:503:22
[01:04:02] 
[01:04:02] ---- [rustdoc] rustdoc/edition-doctest.rs stdout ----
[01:04:02] 
---
[01:04:02] ---- [rustdoc] rustdoc/issue-23106.rs stdout ----
[01:04:02] 
[01:04:02] error: rustdoc failed!
[01:04:02] status: exit code: 101
[01:04:02] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106" "/checkout/src/test/rustdoc/issue-23106.rs" "--test"
[01:04:02] ------------------------------------------
[01:04:02] 
[01:04:02] running 1 test
[01:04:02] test /checkout/src/test/rustdoc/issue-23106.rs - main (line 13) ... FAILED
---
[01:04:02]   |
[01:04:02] 2 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/issue-23106.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:04:02] 
[01:04:02] 
---
[01:04:02] ---- [rustdoc] rustdoc/issue-25944.rs stdout ----
[01:04:02] 
[01:04:02] error: rustdoc failed!
[01:04:02] status: exit code: 101
[01:04:02] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-25944/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-25944" "/checkout/src/test/rustdoc/issue-25944.rs" "--test"
[01:04:02] ------------------------------------------
[01:04:02] 
[01:04:02] running 1 test
[01:04:02] test /checkout/src/test/rustdoc/issue-25944.rs - main (line 13) ... FAILED
---
[01:04:02]   |
[01:04:02] 2 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/issue-25944.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:04:02] 
[01:04:02] 
---
[01:04:02] ---- [rustdoc] rustdoc/issue-30252.rs stdout ----
[01:04:02] 
[01:04:02] error: rustdoc failed!
[01:04:02] status: exit code: 101
[01:04:02] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252" "/checkout/src/test/rustdoc/issue-30252.rs" "--test" "--cfg" "feature=\"bar\""
[01:04:02] ------------------------------------------
[01:04:02] 
[01:04:02] running 1 test
[01:04:02] test /checkout/src/test/rustdoc/issue-30252.rs - foo (line 13) ... FAILED
---
[01:04:02]   |
[01:04:02] 2 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/issue-30252.rs - foo (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:04:02] 
[01:04:02] 
---
[01:04:02] ---- [rustdoc] rustdoc/issue-38129.rs stdout ----
[01:04:02] 
[01:04:02] error: rustdoc failed!
[01:04:02] status: exit code: 101
[01:04:02] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129" "/checkout/src/test/rustdoc/issue-38129.rs" "--test"
[01:04:02] ------------------------------------------
[01:04:02] 
[01:04:02] running 5 tests
[01:04:02] test /checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51) ... FAILED
---
[01:04:02]   |
[01:04:02] 3 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:04:02] 
[01:04:02] ---- /checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25) stdout ----
[01:04:02] ---- /checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25) stdout ----
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02]  --> /checkout/src/test/rustdoc/issue-38129.rs:26:19
[01:04:02]   |
[01:04:02] 3 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] 
[01:04:02] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84) stdout ----
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02]  --> /checkout/src/test/rustdoc/issue-38129.rs:86:19
[01:04:02]   |
[01:04:02] 4 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] 
[01:04:02] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57) stdout ----
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02]  --> /checkout/src/test/rustdoc/issue-38129.rs:59:19
[01:04:02]   |
[01:04:02] 4 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] 
[01:04:02] ---- /checkout/src/test/rustdoc/issue-38129.rs - simple (line 20) stdout ----
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02]  --> /checkout/src/test/rustdoc/issue-38129.rs:20:19
[01:04:02]   |
[01:04:02] 2 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/issue-38129.rs - simple (line 20)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] 
[01:04:02] 
[01:04:02] failures:
[01:04:02] failures:
[01:04:02]     /checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57)
[01:04:02]     /checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84)
[01:04:02]     /checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51)
[01:04:02]     /checkout/src/test/rurg.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:04:02] 
[01:04:02] ---- [rustdoc] rustdoc/playground.rs stdout ----
[01:04:02] 
[01:04:02] error: htmldocck failed!
[01:04:02] status: exit code: 1
[01:04:02] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground" "/checkout/src/test/rustdoc/playground.rs"
[01:04:02] ------------------------------------------
[01:04:02] 
[01:04:02] ------------------------------------------
[01:04:02] stderr:
[01:04:02] stderr:
[01:04:02] ------------------------------------------
[01:04:02] 38: @matches check failed
[01:04:02]  `XPATH PATTERN` did not match
[01:04:02]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://www.example.com/?code=%23!%5Ballow(unused)%5D%0Afn%20main()%20%7B%0Aprintln!(%22Hello%2C%20world!%22)%3B%0A%7D"]' "Run"
[01:04:02] Encountered 1 errors
[01:04:02] 
[01:04:02] ------------------------------------------
[01:04:02] 
[01:04:02] 
[01:04:02] thread '[rustdoc] rustdoc/playground.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:04:02] 
[01:04:02] ---- [rustdoc] rustdoc/test_option_check/bar.rs stdout ----
[01:04:02] 
[01:04:02] error: rustdoc failed!
[01:04:02] status: exit code: 101
[01:04:02] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar" "/checkout/src/test/rustdoc/test_option_check/bar.rs" "--test"
[01:04:02] ------------------------------------------
[01:04:02] 
[01:04:02] running 1 test
[01:04:02] running 1 test
[01:04:02] test /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) ... FAILED
[01:04:02] failures:
[01:04:02] 
[01:04:02] 
[01:04:02] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) stdout ----
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02]   |
[01:04:02] 2 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] 
[01:04:02] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] 
[01:04:02] 
[01:04:02] failures:
[01:04:02] failures:
[01:04:02]     /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)
[01:04:02] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
[01:04:02] 
[01:04:02] 
[01:04:02] ------------------------------------------
---
[01:04:02] stdout:
[01:04:02] ------------------------------------------
[01:04:02] 
[01:04:02] running 3 tests
[01:04:02] test /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) ... FAILED
[01:04:02] test /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) ... FAILED
[01:04:02] test /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) ... FAILED
[01:04:02] failures:
[01:04:02] 
[01:04:02] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) stdout ----
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:25:19
[01:04:02]   |
[01:04:02] 2 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:04:02] 
[01:04:02] 
[01:04:02] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) stdout ----
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02]   |
[01:04:02] 2 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] 
[01:04:02] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:02] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) stdout ----
[01:04:02] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:04:02]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:18:19
[01:04:02]   |
[01:04:02]   |
[01:04:02] 2 | fn main() -> impl std::process::Termination {
[01:04:02]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:04:02]   |
[01:04:02]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:04:02] 
[01:04:02] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18)' pan" "--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" "--rustdoc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "--src-base" "/checkout/src/test/rustdoc" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "rustdoc" "--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  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--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"
[01:04:02] 
[01:04:02] 
[01:04:02] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[01:04:02] Build completed unsuccessfully in 0:19:17
[01:04:02] Build completed unsuccessfully in 0:19:17
[01:04:02] make: *** [check] Error 1
[01:04:02] Makefile:58: recipe for target 'check' failed
125036 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/x86_64-unknown-linux-gnu
125032 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/x86_64-unknown-linux-gnu/release
123696 ./obj/build/x86_64-unknown-linux-gnu/stage0-bootstrap-tools/x86_64-unknown-linux-gnu/release/deps
122804 ./obj/build/x86_64-unknown-linux-gnu/stage1-rustc/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)

@@ -481,7 +481,7 @@ pub fn make_test(s: &str,
if dont_insert_main || already_has_main {
prog.push_str(everything_else);
} else {
prog.push_str("fn main() {\n");
prog.push_str("fn main() -> impl std::process::Termination {\n");

This comment has been minimized.

@QuietMisdreavus

QuietMisdreavus Dec 4, 2018

Member

We should probably also check for #![no_std] being in the doctest, and switch to core::process as appropriate.

This comment has been minimized.

@eddyb

eddyb Dec 4, 2018

Member

If the trait is in core you can just always use core, I think we want to make both of them available? cc @petrochenkov @joshtriplett @aturon

This comment has been minimized.

@joshtriplett

This comment has been minimized.

@llogiq

llogiq Dec 4, 2018

Contributor

It's now using core::process::Termination.

This comment has been minimized.

@llogiq

llogiq Dec 4, 2018

Contributor

Which unfortunately isn't there yet.

@llogiq llogiq force-pushed the llogiq:process-termination-doctest branch from 6a95bc2 to d291327 Dec 4, 2018

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Dec 4, 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:1d215a03:start=1543922247991577263,finish=1543922325097464129,duration=77105886866
$ 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
---
travis_time:start:test_codegen
Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:55:57] 
[00:55:57] running 120 tests
[00:55:59] i..ii...iii..iiii.....i...i..........i..iii.............i.....i.....ii...i..i.ii..............i...ii 100/120
[00:56:00] ..ii.i.....iiii.....
[00:56:00] 
[00:56:00]  finished in 3.465
[00:56:00] travis_fold:end:test_codegen

---
travis_time:start:test_debuginfo
Check compiletest suite=debuginfo mode=debuginfo-both (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:56:15] 
[00:56:15] running 118 tests
[00:56:38] .iiiii...i.....i..i...i..i.i..i.i..i.....i..i....i..........iiii.........i.i....i...i.......ii.i.i.i 100/118
[00:56:42] ......iii.i.....ii
[00:56:42] 
[00:56:42]  finished in 27.849
[00:56:42] travis_fold:end:test_debuginfo

---
travis_time:start:test_rustdoc
Check compiletest suite=rustdoc mode=rustdoc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[01:01:38] 
[01:01:38] running 279 tests
[01:02:45] .......................i.......F.................................................................... 100/279
[01:03:40] ......................F.....F...i.........F....................F.................................... 200/279
[01:04:25] test /checkout/src/test/rustdoc/edition-doctest.rs - foo (line 13) ... FAILED
[01:04:25] test /checkout/src/test/rustdoc/edition-doctest.rs - foo (line 32) ... ok
[01:04:25] 
[01:04:25] failures:
---
[01:04:25] ---- [rustdoc] rustdoc/issue-30252.rs stdout ----
[01:04:25] 
[01:04:25] error: rustdoc failed!
[01:04:25] status: exit code: 101
[01:04:25] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252" "/checkout/src/test/rustdoc/issue-30252.rs" "--test" "--cfg" "feature=\"bar\""
[01:04:25] ------------------------------------------
[01:04:25] 
[01:04:25] running 1 test
[01:04:25] test /checkout/src/test/rustdoc/issue-30252.rs - foo (line 13) ... FAILED
---
[01:04:25] 
[01:04:25] ------------------------------------------
[01:04:25] stderr:
[01:04:25] ------------------------------------------
[01:04:25] 24: @matches check failed
[01:04:25]  `XPATH PATTERN` did not match
[01:04:25]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://example.com/?code=%23!%5Ballow(unused)%5D%0Aextern%20crate%20foo%3B%0Afn%20main()%20%7B%0Ause%20foo%3A%3Adummy%3B%0Adummy()%3B%0A%7D"]' "Run"
[01:04:25] Encountered 1 errors
[01:04:25] 
[01:04:25] ------------------------------------------
[01:04:25] 
[01:04:25] 
[01:04:25] thread '[rustdoc] rustdoc/playground-arg.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3282:9
[01:04:25] 
[01:04:25] ---- [rustdoc] rustdoc/playground.rs stdout ----
[01:04:25] 
[01:04:25] error: htmldocck failed!
[01:04:25] status: exit code: 1
[01:04:25] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground" "/checkout/src/test/rustdoc/playground.rs"
[01:04:25] ------------------------------------------
[01:04:25] 
[01:04:25] ------------------------------------------
[01:04:25] stderr:
[01:04:25] stderr:
[01:04:25] ------------------------------------------
[01:04:25] 38: @matches check failed
[01:04:25]  `XPATH PATTERN` did not match
[01:04:25]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://www.example.com/?code=%23!%5Ballow(unused)%5D%0Afn%20main()%20%7B%0Aprintln!(%22Hello%2C%20world!%22)%3B%0A%7D"]' "Run"
[01:04:ng 1 test
[01:04:ng 1 test
[01:04:25] test /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) ... FAILED
[01:04:25] failures:
[01:04:25] 
[01:04:25] 
[01:04:25] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) stdout ----
[01:04:25] error[E0433]: failed to resolve: could not find `process` in `core`
[01:04:25]   |
[01:04:25] 2 | fn main() -> impl core::process::Termination {
[01:04:25]   |                         ^^^^^^^ could not find `process` in `core`
[01:04:25] 
[01:04:25] 
[01:04:25] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:323:13
[01:04:25] 
[01:04:25] 
[01:04:25] failures:
[01:04:25] failures:
[01:04:25]     /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)
[01:04:25] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
[01:04:25] 
[01:04:25] 
[01:04:25] ------------------------------------------

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)

@llogiq

This comment has been minimized.

Contributor

llogiq commented Dec 5, 2018

There is one problem with nostd code: we cannot move the Termnation trait to libcore because that would pull all reporting, formatting, etc. into scope, and we want to avoid that. On the other hand, I'm not too happy with the idea of not having this on nostd code. Perhaps we can use the system panic handler (which would abort on Err) instead?

In any event, this means we'll have to distinguish nostd crates. @QuietMisdreavus any idea how to do this?

@eddyb

This comment has been minimized.

Member

eddyb commented Dec 7, 2018

I assumed #56470 (comment) meant core::process::Termination already existed, what gives?

@QuietMisdreavus

This comment has been minimized.

Member

QuietMisdreavus commented Dec 7, 2018

@eddyb That was a wild assumption on my part; i didn't realize that the Termination trait was only in std.

@QuietMisdreavus

This comment has been minimized.

Member

QuietMisdreavus commented Dec 7, 2018

@llogiq Any top-level crate attributes in the doctest will already be set in the prog string right before your change in test.rs, so you may be able to read through that to look for a #![no_std] attribute.

@llogiq

This comment has been minimized.

Contributor

llogiq commented Dec 7, 2018

The problem with a nostd Termination trait is that the current implementation formats any Err value it encounters, thus pulling in formatting logic, which we want to avoid on nostd. So we'd need an easier implementation in libcore.

@llogiq

This comment has been minimized.

Contributor

llogiq commented Dec 10, 2018

@QuietMisdreavus do you mean prog.contains("#[no_std]")? Does that also work with #[cfg_attr(..)]?

TModify doctest's auto-`fn main()` to allow `Result`s
This lets the default `fn main()` return `impl Termination`, which
allows the use of `?` in most tests without adding it manually.

@llogiq llogiq force-pushed the llogiq:process-termination-doctest branch from d291327 to af624c3 Dec 10, 2018

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Dec 10, 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:06863dd2:start=1544431555776571544,finish=1544431611273989014,duration=55497417470
$ 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
---
travis_time:start:test_codegen
Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:53:58] 
[00:53:58] running 120 tests
[00:54:01] i..ii...iii..iiii.....i...i..........i..iii.............i.....i.....ii...i..i.ii..............i...ii 100/120
[00:54:01] ..ii.i.....iiii.....
[00:54:01] 
[00:54:01]  finished in 3.330
[00:54:01] travis_fold:end:test_codegen

---
travis_time:start:test_debuginfo
Check compiletest suite=debuginfo mode=debuginfo-both (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:54:15] 
[00:54:15] running 118 tests
[00:54:39] .iiiii...i.....i..i...i..i.i..i.i..i.....i..i....i..........iiii.........i.i....i...i.......ii.i.i.i 100/118
[00:54:43] ......iii.i.....ii
[00:54:43] 
[00:54:43]  finished in 28.074
[00:54:43] travis_fold:end:test_debuginfo

---
travis_time:start:test_rustdoc
Check compiletest suite=rustdoc mode=rustdoc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:59:34] 
[00:59:34] running 282 tests
[01:00:38] .......................i.......F.................................................................... 100/282
[01:01:29] .......................F.....F...i........F.....................F................................... 200/282
[01:02:13] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:503:22
[01:02:13] .................F..F...F....................................FF...................
[01:02:13] 
[01:02:13] ---- [rustdoc] rustdoc/edition-doctest.rs stdout ----
[01:02:13] 
[01:02:13] error: rustdoc failed!
---
[01:02:13]   |
[01:02:13] 4 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/edition-doctest.rs - foo (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:02:13] 
[01:02:13] 
---
[01:02:13] ---- [rustdoc] rustdoc/issue-23106.rs stdout ----
[01:02:13] 
[01:02:13] error: rustdoc failed!
[01:02:13] status: exit code: 101
[01:02:13] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106" "/checkout/src/test/rustdoc/issue-23106.rs" "--test"
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] running 1 test
[01:02:13] test /checkout/src/test/rustdoc/issue-23106.rs - main (line 13) ... FAILED
---
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/issue-23106.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:02:13] 
[01:02:13] 
---
[01:02:13] ---- [rustdoc] rustdoc/issue-25944.rs stdout ----
[01:02:13] 
[01:02:13] error: rustdoc failed!
[01:02:13] status: exit code: 101
[01:02:13] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-25944/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-25944" "/checkout/src/test/rustdoc/issue-25944.rs" "--test"
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] running 1 test
[01:02:13] test /checkout/src/test/rustdoc/issue-25944.rs - main (line 13) ... FAILED
---
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/issue-25944.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:02:13] 
[01:02:13] 
---
[01:02:13] ---- [rustdoc] rustdoc/issue-30252.rs stdout ----
[01:02:13] 
[01:02:13] error: rustdoc failed!
[01:02:13] status: exit code: 101
[01:02:13] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252" "/checkout/src/test/rustdoc/issue-30252.rs" "--test" "--cfg" "feature=\"bar\""
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] running 1 test
[01:02:13] test /checkout/src/test/rustdoc/issue-30252.rs - foo (line 13) ... FAILED
---
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/issue-30252.rs - foo (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:02:13] 
[01:02:13] 
---
[01:02:13] ---- [rustdoc] rustdoc/issue-38129.rs stdout ----
[01:02:13] 
[01:02:13] error: rustdoc failed!
[01:02:13] status: exit code: 101
[01:02:13] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129" "/checkout/src/test/rustdoc/issue-38129.rs" "--test"
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] running 5 tests
[01:02:13] test /checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51) ... FAILED
---
[01:02:13]   |
[01:02:13] 3 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57) stdout ----
[01:02:13] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]  --> /checkout/src/test/rustdoc/issue-38129.rs:59:19
[01:02:13]   |
[01:02:13] 4 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]  --> /checkout/src/test/rustdoc/issue-38129.rs:26:19
[01:02:13]   |
[01:02:13] 3 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]  --> /checkout/src/test/rustdoc/issue-38129.rs:86:19
[01:02:13]   |
[01:02:13] 4 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/issue-38129.rs - simple (line 20) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]  --> /checkout/src/test/rustdoc/issue-38129.rs:20:19
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/issue-38129.rs - simple (line 20)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] 
[01:02:13] failures:
---
[01:02:13] thread '[rustdoc] rustdoc/issue-38129.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3252:9
[01:02:13] 
[01:02:13] ---- [rustdoc] rustdoc/playground-arg.rs stdout ----
[01:02:13] 
[01:02:13] error: htmldocck failed!
[01:02:13] status: exit code: 1
[01:02:13] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground-arg" "/checkout/src/test/rustdoc/playground-arg.rs"
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] ------------------------------------------
[01:02:13] stderr:
[01:02:13] stderr:
[01:02:13] ------------------------------------------
[01:02:13] 24: @matches check failed
[01:02:13]  `XPATH PATTERN` did not match
[01:02:13]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://example.com/?code=%23!%5Ballow(unused)%5D%0Aextern%20crate%20foo%3B%0Afn%20main()%20%7B%0Ause%20foo%3A%3Adummy%3B%0Adummy()%3B%0A%7D"]' "Run"
[01:02:13] Encountered 1 errors
[01:02:13] 
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] 
[01:02:13] thread '[rustdoc] rustdoc/playground-arg.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3252:9
[01:02:13] 
[01:02:13] ---- [rustdoc] rustdoc/playground.rs stdout ----
[01:02:13] 
[01:02:13] error: htmldocck failed!
[01:02:13] status: exit code: 1
[01:02:13] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground" "/checkout/src/test/rustdoc/playground.rs"
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] ------------------------------------------
[01:02:13] stderr:
[01:02:13] stderr:
[01:02:13] ------------------------------------------
[01:02:13] 38: @matches check failed
[01:02:13]  `XPATH PATTERN` did not match
[01:02:13]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://www.example.com/?code=%23!%5Ballow(unused)%5D%0Afn%20main()%20%7B%0Aprintln!(%22Hello%2C%20world!%22)%3B%0A%7D"]' "Run"
[01:02:13] Encountered 1 errors
[01:02:13] 
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] 
[01:02:13] thread '[rustdoc] rustdoc/playground.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3252:9
[01:02:13] 
[01:02:13] ---- [rustdoc] rustdoc/process-termination.rs stdout ----
[01:02:13] 
[01:02:13] error: rustdoc failed!
[01:02:13] status: exit code: 101
[01:02:13] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/process-termination/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/process-termination" "/checkout/src/test/rustdoc/process-termination.rs" "--test"
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] running 4 tests
[01:02:13] test /checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 36) ... ok
---
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 29)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 17) stdout ----
[01:02:13] ---- /checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 17) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]  --> /checkout/src/test/rustdoc/process-termination.rs:17:19
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 17)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 23) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]  --> /checkout/src/test/rustdoc/process-termination.rs:23:19
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 23)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] 
[01:02:13] failures:
---
[01:02:13] ---- [rustdoc] rustdoc/test_option_check/bar.rs stdout ----
[01:02:13] 
[01:02:13] error: rustdoc failed!
[01:02:13] status: exit code: 101
[01:02:13] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar" "/checkout/src/test/rustdoc/test_option_check/bar.rs" "--test"
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] running 1 test
[01:02:13] running 1 test
[01:02:13] test /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) ... FAILED
[01:02:13] failures:
[01:02:13] 
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] 
[01:02:13] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] 
[01:02:13] failures:
[01:02:13] failures:
[01:02:13]     /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)
[01:02:13] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
[01:02:13] 
[01:02:13] 
[01:02:13] ------------------------------------------
---
[01:02:13] stdout:
[01:02:13] ------------------------------------------
[01:02:13] 
[01:02:13] running 3 tests
[01:02:13] test /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) ... FAILED
[01:02:13] test /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) ... FAILED
[01:02:13] test /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) ... FAILED
[01:02:13] failures:
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:25:19
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) stdout ----
[01:02:13] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:18:19
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] 
[01:02:13] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) stdout ----
[01:02:13] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:02:13]   |
[01:02:13] 2 | fn main() -> impl std::process::Termination {
[01:02:13]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:02:13]   |
[01:02:13]   |
[01:02:13]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:02:13] 
[01:02:13] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:02:13] 
[01:02:13] failures:
[01:02:13] failures:
[01:02:13]     /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16)
[01:02:13]     /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25)
[01:02:13]     /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18)
[01:02:13] test result: FAILED. 0 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out
[01:02:13] 
[01:02:13] 
[01:02:13] ------------------------------------------
---
[01:02:13] test result: FAILED. 270 passed; 10 failed; 2 ignored; 0 measured; 0 filtered out
[01:02:13] 
[01:02:13] 
[01:02:13] 
[01:02:13] 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" "--rustdoc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "--src-base" "/checkout/src/test/rustdoc" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "rustdoc" "--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  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--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"
[01:02:13] 
[01:02:13] 
[01:02:13] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[01:02:13] Build completed unsuccessfully in 0:18:30
[01:02:13] Build completed unsuccessfully in 0:18:30
[01:02:13] Makefile:58: recipe for target 'check' failed
[01:02:13] make: *** [check] Error 1
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:1c2c444c
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Mon Dec 10 09:49:13 UTC 2018
---
travis_time:end:13731924:start=1544435355598205749,finish=1544435355602497130,duration=4291381
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:0efa5278
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!check

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)

@QuietMisdreavus

This comment has been minimized.

Member

QuietMisdreavus commented Dec 10, 2018

@llogiq Sadly, it won't catch that, so if we want to get fancier we'll need to run a similar parsing loop over the attributes.

(On the other hand, having a #![cfg_attr] in a doctest isn't that useful, since --cfg flags aren't given to doctests, but if someone's showing it off, it's probably worth accommodating.)

@llogiq

This comment has been minimized.

Contributor

llogiq commented Dec 10, 2018

Ok, so for starters, prog.contains("#[no_std]") || prog.contains("#![no_std]") should suffice. We can go back and add some syntactic parsing later.

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Dec 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:0186608a:start=1544734297386294686,finish=1544734352251437070,duration=54865142384
$ 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:37:34]    Compiling parking_lot_core v0.3.0
[00:37:36]    Compiling tempfile v3.0.5
[00:37:36]    Compiling parking_lot v0.6.4
[00:37:37]    Compiling rustdoc v0.0.0 (/checkout/src/librustdoc)
[00:37:42] error[E0277]: the trait bound `std::string::String: std::iter::Extend<&&str>` is not satisfied
[00:37:42]     |
[00:37:42]     |
[00:37:42] 496 |         prog.extend(&[main_pre, everything_else, main_post]);
[00:37:42]     |              ^^^^^^ the trait `std::iter::Extend<&&str>` is not implemented for `std::string::String`
[00:37:42]     = help: the following implementations were found:
[00:37:42]     = help: the following implementations were found:
[00:37:42]               <std::string::String as std::iter::Extend<&'a char>>
[00:37:42]               <std::string::String as std::iter::Extend<&'a str>>
[00:37:42]               <std::string::String as std::iter::Extend<char>>
[00:37:42]               <std::string::String as std::iter::Extend<std::borrow::Cow<'a, str>>>
[00:37:42]               <std::string::String as std::iter::Extend<std::string::String>>
[00:37:43] error: aborting due to previous error
[00:37:43] 
[00:37:43] For more information about this error, try `rustc --explain E0277`.
[00:37:43] error: Could not compile `rustdoc`.
---
36996 ./obj/build/x86_64-unknown-linux-gnu/stage0-bootstrap-tools
36476 ./obj/build/x86_64-unknown-linux-gnu/stage1-std/release
36476 ./obj/build/x86_64-unknown-linux-gnu/stage0-std/release
36020 ./src/tools/clang/lib
34948 /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:0010d01d
$ 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)

@llogiq llogiq force-pushed the llogiq:process-termination-doctest branch from 5efff07 to 05105b2 Dec 14, 2018

@rust-highfive

This comment has been minimized.

Collaborator

rust-highfive commented Dec 14, 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:175096c8:start=1544772634138926040,finish=1544772687645523881,duration=53506597841
$ 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
---
travis_time:start:test_codegen
Check compiletest suite=codegen mode=codegen (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:55:15] 
[00:55:15] running 121 tests
[00:55:18] i..ii...iii..iiii.....i...i..........i..iii.............i.....i......ii...i..i.ii..............i...i 100/121
[00:55:18] i..ii.i.....iiii.....
[00:55:18] 
[00:55:18]  finished in 3.479
[00:55:18] travis_fold:end:test_codegen

---
travis_time:start:test_debuginfo
Check compiletest suite=debuginfo mode=debuginfo-both (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[00:55:33] 
[00:55:33] running 119 tests
[00:55:56] .iiiii...i.....i..i...i..i.i..i.ii..i.....i..i....i..........iiii.........i.i....i...i.......ii.i.i. 100/119
[00:55:59] i......iii.i.....ii
[00:55:59] 
[00:55:59]  finished in 27.003
[00:55:59] travis_fold:end:test_debuginfo

---
travis_time:start:test_rustdoc
Check compiletest suite=rustdoc mode=rustdoc (x86_64-unknown-linux-gnu -> x86_64-unknown-linux-gnu)
[01:00:47] 
[01:00:47] running 282 tests
[01:01:53] .......................i........F................................................................... 100/282
[01:02:48] .......................F.....F...i.........F....................F................................... 200/282
[01:03:34] thread 'main' panicked at 'Some tests failed', src/tools/compiletest/src/main.rs:503:22
[01:03:34] .................F..F....F...................................F.F..................
[01:03:34] 
[01:03:34] ---- [rustdoc] rustdoc/edition-doctest.rs stdout ----
[01:03:34] 
[01:03:34] error: rustdoc failed!
---
[01:03:34]   |
[01:03:34] 4 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/edition-doctest.rs - foo (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:34] 
[01:03:34] 
---
[01:03:34] ---- [rustdoc] rustdoc/issue-23106.rs stdout ----
[01:03:34] 
[01:03:34] error: rustdoc failed!
[01:03:34] status: exit code: 101
[01:03:34] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-23106" "/checkout/src/test/rustdoc/issue-23106.rs" "--test"
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] running 1 test
[01:03:34] test /checkout/src/test/rustdoc/issue-23106.rs - main (line 13) ... FAILED
---
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/issue-23106.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] note: Run with `RUST_BACKTRACEtdoc/issue-25944.rs:13:19
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/issue-25944.rs - main (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:34] 
[01:03:34] 
---
[01:03:34] ---- [rustdoc] rustdoc/issue-30252.rs stdout ----
[01:03:34] 
[01:03:34] error: rustdoc failed!
[01:03:34] status: exit code: 101
[01:03:34] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-30252" "/checkout/src/test/rustdoc/issue-30252.rs" "--test" "--cfg" "feature=\"bar\""
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] running 1 test
[01:03:34] test /checkout/src/test/rustdoc/issue-30252.rs - foo (line 13) ... FAILED
---
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/issue-30252.rs - foo (line 13)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:34] 
[01:03:34] 
---
[01:03:34] ---- [rustdoc] rustdoc/issue-38129.rs stdout ----
[01:03:34] 
[01:03:34] error: rustdoc failed!
[01:03:34] status: exit code: 101
[01:03:34] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/issue-38129" "/checkout/src/test/rustdoc/issue-38129.rs" "--test"
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] running 5 tests
[01:03:34] test /checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51) ... FAILED
---
[01:03:34]   |
[01:03:34] 3 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/issue-38129.rs - feature_attr (line 51)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57) stdout ----
[01:03:34] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57) stdout ----
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34]  --> /checkout/src/test/rustdoc/issue-38129.rs:59:19
[01:03:34]   |
[01:03:34] 4 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs (line 57)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84) stdout ----
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34]  --> /checkout/src/test/rustdoc/issue-38129.rs:86:19
[01:03:34]   |
[01:03:34] 4 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/issue-38129.rs - both_attrs_reverse (line 84)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25) stdout ----
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34]  --> /checkout/src/test/rustdoc/issue-38129.rs:26:19
[01:03:34]   |
[01:03:34] 3 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/issue-38129.rs - non_feature_attr (line 25)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/issue-38129.rs - simple (line 20) stdout ----
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34]  --> /checkout/src/test/rustdoc/issue-38129.rs:20:19
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/issue-38129.rs - simple (line 20)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] 
[01:03:34] 
[01:03:34] failures:
---
[01:03:34] thread '[rustdoc] rustdoc/issue-38129.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3252:9
[01:03:34] 
[01:03:34] ---- [rustdoc] rustdoc/playground-arg.rs stdout ----
[01:03:34] 
[01:03:34] error: htmldocck failed!
[01:03:34] status: exit code: 1
[01:03:34] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground-arg" "/checkout/src/test/rustdoc/playground-arg.rs"
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] ------------------------------------------
[01:03:34] stderr:
[01:03:34] stderr:
[01:03:34] ------------------------------------------
[01:03:34] 24: @matches check failed
[01:03:34]  `XPATH PATTERN` did not match
[01:03:34]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://example.com/?code=%23!%5Ballow(unused)%5D%0Aextern%20crate%20foo%3B%0Afn%20main()%20%7B%0Ause%20foo%3A%3Adummy%3B%0Adummy()%3B%0A%7D"]' "Run"
[01:03:34] Encountered 1 errors
[01:03:34] 
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] 
[01:03:34] thread '[rustdoc] rustdoc/playground-arg.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3252:9
[01:03:34] 
[01:03:34] ---- [rustdoc] rustdoc/playground.rs stdout ----
[01:03:34] 
[01:03:34] error: htmldocck failed!
[01:03:34] status: exit code: 1
[01:03:34] command: "/usr/bin/python2.7" "/checkout/src/etc/htmldocck.py" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/playground" "/checkout/src/test/rustdoc/playground.rs"
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] ------------------------------------------
[01:03:34] stderr:
[01:03:34] stderr:
[01:03:34] ------------------------------------------
[01:03:34] 38: @matches check failed
[01:03:34]  `XPATH PATTERN` did not match
[01:03:34]  // @matches foo/index.html '//a[@class="test-arrow"][@href="https://www.example.com/?code=%23!%5Ballow(unused)%5D%0Afn%20main()%20%7B%0Aprintln!(%22Hello%2C%20world!%22)%3B%0A%7D"]' "Run"
[01:03:34] Encountered 1 errors
[01:03:34] 
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] 
[01:03:34] thread '[rustdoc] rustdoc/playground.rs' panicked at 'explicit panic', src/tools/compiletest/src/runtest.rs:3252:9
[01:03:34] 
[01:03:34] ---- [rustdoc] rustdoc/process-termination.rs stdout ----
[01:03:34] 
[01:03:34] error: rustdoc failed!
[01:03:34] status: exit code: 101
[01:03:34] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/process-termination/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/process-termination" "/checkout/src/test/rustdoc/process-termination.rs" "--test"
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] running 4 tests
[01:03:34] test /checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 36) ... ok
---
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 29)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 17) stdout ----
[01:03:34] ---- /checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 17) stdout ----
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34]  --> /checkout/src/test/rustdoc/process-termination.rs:17:19
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 17)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 23) stdout ----
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34]  --> /checkout/src/test/rustdoc/process-termination.rs:23:19
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/process-termination.rs - check_process_termination (line 23)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] 
[01:03:34] 
[01:03:34] failures:
---
[01:03:34] ---- [rustdoc] rustdoc/test_option_check/bar.rs stdout ----
[01:03:34] 
[01:03:34] error: rustdoc failed!
[01:03:34] status: exit code: 101
[01:03:34] command: "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-L" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar/auxiliary" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc/test_option_check/bar" "/checkout/src/test/rustdoc/test_option_check/bar.rs" "--test"
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] running 1 test
[01:03:34] running 1 test
[01:03:34] test /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) ... FAILED
[01:03:34] failures:
[01:03:34] 
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16) stdout ----
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] 
[01:03:34] thread '/checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] 
[01:03:34] 
[01:03:34] failures:
[01:03:34] failures:
[01:03:34]     /checkout/src/test/rustdoc/test_option_check/bar.rs - foooo (line 16)
[01:03:34] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out
[01:03:34] 
[01:03:34] 
[01:03:34] ------------------------------------------
---
[01:03:34] stdout:
[01:03:34] ------------------------------------------
[01:03:34] 
[01:03:34] running 3 tests
[01:03:34] test /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) ... FAILED
[01:03:34] test /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) ... FAILED
[01:03:34] test /checkout/src/test/rustdoc/test_option_check/bar.rs - bar::foooo (line 16) ... FAILED
[01:03:34] failures:
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18) stdout ----
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34] error[E0658]: use of unstable library feature 'termination_trait_lib' (see issue #43301)
[01:03:34]  --> /checkout/src/test/rustdoc/test_option_check/test.rs:18:19
[01:03:34]   |
[01:03:34] 2 | fn main() -> impl std::process::Termination {
[01:03:34]   |                   ^^^^^^^^^^^^^^^^^^^^^^^^^
[01:03:34]   |
[01:03:34]   = help: add #![feature(termination_trait_lib)] to the crate attributes to enable
[01:03:34] thread '/checkout/src/test/rustdoc/test_option_check/test.rs - Foo (line 18)' panicked at 'couldn't compile the test', src/librustdoc/test.rs:326:13
[01:03:34] note: Run with `RUST_BACKTRACE=1` for a backtrace.
[01:03:34] 
[01:03:34] ---- /checkout/src/test/rustdoc/test_option_check/test.rs - Bar (line 25) stdout ----
---
[01:03:34] test result: FAILED. 270 passed; 10 failed; 2 ignored; 0 measured; 0 filtered out
[01:03:34] 
[01:03:34] 
[01:03:34] 
[01:03:34] 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" "--rustdoc-path" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustdoc" "--src-base" "/checkout/src/test/rustdoc" "--build-base" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/rustdoc" "--stage-id" "stage2-x86_64-unknown-linux-gnu" "--mode" "rustdoc" "--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  -Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--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"
[01:03:34] 
[01:03:34] 
[01:03:34] failed to run: /checkout/obj/build/bootstrap/debug/bootstrap test
[01:03:34] Build completed unsuccessfully in 0:18:51
[01:03:34] Build completed unsuccessfully in 0:18:51
[01:03:34] Makefile:58: recipe for target 'check' failed
[01:03:34] make: *** [check] Error 1
The command "stamp sh -x -c "$RUN_SCRIPT"" exited with 2.
travis_time:start:04e75990
$ date && (curl -fs --head https://google.com | grep ^Date: | sed 's/Date: //g' || true)
Fri Dec 14 08:35:11 UTC 2018
---
travis_time:end:1fbeb3e0:start=1544776513087048223,finish=1544776513093851151,duration=6802928
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:101b6918
$ 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:start:crashlog
obj/cores/core.16896.!checkout!obj!build!x86_64-unknown-linux-gnu!stage2!bin!rustc
[New LWP 16938]
[New LWP 16937]
[New LWP 16935]
[New LWP 16936]
[New LWP 16939]
[New LWP 16896]
warning: Could not load shared library symbols for 14 libraries, e.g. /lib/x86_64-linux-gnu/libc.so.6.
Use the "info sharedlibrary" command to see the complete listing.
Do you need "set solib-search-path" or "set sysroot"?
Core was generated by `/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc /checkout/src/tes'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007facc6e0d8ba in ?? ()
#0  0x00007facc6e0d8ba in ?? ()
#1  0x0000000000000000 in ?? ()
travis_time:end:101b6918:start=1544776513102321467,finish=1544776513962487681,duration=860166214
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:08399b14
travis_time:start:08399b14
$ 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:27b87142
$ 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)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment