Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#[contracts::requires(...)] + #[contracts::ensures(...)] #128045

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

pnkfelix
Copy link
Member

@pnkfelix pnkfelix commented Jul 21, 2024

cc #128044

Updated contract support: attribute syntax for preconditions and postconditions, implemented via a series of desugarings that culminates in:

  1. a compile-time flag (-Z contract-checks) that, similar to -Z ub-checks, attempts to ensure that the decision of enabling/disabling contract checks is delayed until the end user program is compiled,
  2. invocations of lang-items that handle invoking the precondition, building a checker for the post-condition, and invoking that post-condition checker at the return sites for the function, and
  3. intrinsics for the actual evaluation of pre- and post-condition predicates that third-party verification tools can intercept and reinterpret for their own purposes (e.g. creating shims of behavior that abstract away the function body and replace it solely with the pre- and post-conditions).

Known issues:

  • My original intent, as described in the MCP (Contracts: Experimental attributes and language intrinsics compiler-team#759) was to have a rustc-prefixed attribute namespace (like rustc_contracts::requires). But I could not get things working when I tried to do rewriting via a rustc-prefixed builtin attribute-macro. So for now it is called contracts::requires.

  • Our attribute macro machinery does not provide direct support for attribute arguments that are parsed like rust expressions. I spent some time trying to add that (e.g. something that would parse the attribute arguments as an AST while treating the remainder of the items as a token-tree), but its too big a lift for me to undertake. So instead I hacked in something approximating that goal, by semi-trivially desugaring the token-tree attribute contents into internal AST constucts. This may be too fragile for the long-term.

    • (In particular, it definitely breaks when you try to add a contract to a function like this: fn foo1(x: i32) -> S<{ 23 }> { ... }, because its token-tree based search for where to inject the internal AST constructs cannot immediately see that the { 23 } is within a generics list. I think we can live for this for the short-term, i.e. land the work, and continue working on it while in parallel adding a new attribute variant that takes a token-tree attribute alongside an AST annotation, which would completely resolve the issue here.)
  • the intent of -Z contract-checks is that it behaves like -Z ub-checks, in that we do not prematurely commit to including or excluding the contract evaluation in upstream crates (most notably, core and std). But the current test suite does not actually check that this is the case. Ideally the test suite would be extended with a multi-crate test that explores the matrix of enabling/disabling contracts on both the upstream lib and final ("leaf") bin crates.

@rustbot
Copy link
Collaborator

rustbot commented Jul 21, 2024

r? @fee1-dead

rustbot has assigned @fee1-dead.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Jul 21, 2024
@rustbot
Copy link
Collaborator

rustbot commented Jul 21, 2024

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

@oli-obk
Copy link
Contributor

oli-obk commented Jul 22, 2024

Please add a ui test with an attribute proc-macro aux build that conflicts with contracts::requires (so I guess a crate contracts with a requires proc-macro attribute?)

register(
sym::contracts_requires,
SyntaxExtensionKind::Attr(Box::new(contracts::ExpandRequires)),
);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This macro should be able to use register_attr! above.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure if we actually can, if we want to support arbitrary syntax within the contracts::require(...) -- doesn't register_attr! mandate that the requires expression conform to ast::MetaItem, which imposes restrictions on what the syntax can be, i.e. x > 0 wouldn't work?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I took a closer look at this, and this is very unfortunate. I don't believe the current builtin macro setup allows for "path segments"-like namespacing (like rustc_contracts::require). I've tried to change the builtin macro support to allow multiple "segments" via SmallVec<[Symbol; 2]>, but as one would expect, that change kept propagating outwards to attributes.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sorry for my delay in responding here.

@jieyouxu is exactly right.

specifically, register_attr! expands to a SyntaxExtensionKind::LegacyAttr, which is where the conformance to ast::MetaItem is enforced IIRC.

The plan here to support code snippets like x > 0 in a contract form means that we cannot conform to ast::MetaItem.

(In theory I could try to extend the register_attr! macro to support expansion to non LegacyAttr. Is that what you are asking for, @petrochenkov ?)

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@petrochenkov let me know if you want me to make any changes here. Per @pnkfelix comment, using register_attr! would restrict the input of the contract attributes which is not desirable here. Thanks!

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If that is the reason, at the very least a comment is needed to explain that.

Copy link
Contributor

@celinval celinval Jan 27, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are comments in the builtin macro implementation. Would you like me to add comments to this file as well?

library/core/src/prelude/common.rs Outdated Show resolved Hide resolved
@fee1-dead
Copy link
Member

r? compiler

tests/ui/contracts.rs Outdated Show resolved Hide resolved
@chenyukang
Copy link
Member

r? compiler

@rustbot rustbot assigned Nadrieril and unassigned chenyukang Jul 24, 2024
@Nadrieril
Copy link
Member

I don't know that part of the compiler

r? @petrochenkov would you like to review this?

@rustbot rustbot assigned petrochenkov and unassigned Nadrieril Jul 24, 2024
@petrochenkov
Copy link
Contributor

would you like to review this?

No.
r? compiler

@rustbot rustbot assigned chenyukang and unassigned petrochenkov Jul 24, 2024
@petrochenkov
Copy link
Contributor

r? compiler

@rustbot rustbot assigned jieyouxu and unassigned chenyukang Jul 24, 2024
@jieyouxu
Copy link
Member

I'll ask T-compiler for another suitable reviewer to take a look at the HIR/MIR parts of the PR, or take over the review. In the mean time, I'll also roll a T-libs reviewer for the libs part.

r? jieyouxu
r? libs

@rustbot rustbot assigned Amanieu and unassigned jieyouxu Jul 24, 2024
@jieyouxu jieyouxu self-assigned this Jul 24, 2024
@oli-obk oli-obk self-assigned this Jul 24, 2024
@rustbot rustbot added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jan 22, 2025
@celinval celinval force-pushed the rustc-contracts branch 2 times, most recently from 722bfe7 to 4fbde37 Compare January 23, 2025 22:11
@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Contributor

bors commented Jan 24, 2025

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

@bors
Copy link
Contributor

bors commented Jan 26, 2025

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

fmease added a commit to fmease/rust that referenced this pull request Jan 29, 2025
Refactor FnKind variant to hold &Fn

Pulling the change suggested in rust-lang#128045 to reduce the impact of changing `Fn` item.

r? `@oli-obk`
rust-timer added a commit to rust-lang-ci/rust that referenced this pull request Jan 29, 2025
Rollup merge of rust-lang#136164 - celinval:chores-fnkind, r=oli-obk

Refactor FnKind variant to hold &Fn

Pulling the change suggested in rust-lang#128045 to reduce the impact of changing `Fn` item.

r? `@oli-obk`
@traviscross
Copy link
Contributor

@rustbot labels -I-lang-nominated

We discussed this in the lang call today and signed off on this as a lang experiment according to our process. Many of us were excited to see this work go forward. @nikomatsakis has volunteered to be the liaison, and @joshtriplett also expressed his interest and willingness to help here.

@rustbot rustbot removed the I-lang-nominated Nominated for discussion during a lang team meeting. label Jan 29, 2025
pnkfelix and others added 9 commits January 30, 2025 10:36
These are hooks to:

  1. control whether contract checks are run
  2. allow 3rd party tools to intercept and reintepret the results of running contracts.
… to invoke.

see test for an example of the kind of injected code that is anticipated here.
…ract lang items

includes post-developed commit: do not suggest internal-only keywords as corrections to parse failures.

includes post-developed commit: removed tabs that creeped in into rustfmt tool source code.

includes post-developed commit, placating rustfmt self dogfooding.

includes post-developed commit: add backquotes to prevent markdown checking from trying to treat an attr as a markdown hyperlink/

includes post-developed commit: fix lowering to keep contracts from being erroneously inherited by nested bodies (like closures).

Rebase Conflicts:
 - compiler/rustc_parse/src/parser/diagnostics.rs
 - compiler/rustc_parse/src/parser/item.rs
 - compiler/rustc_span/src/hygiene.rs

Remove contracts keywords from diagnostic messages
The extended syntax for function signature that includes contract clauses
should never be user exposed versus the interface we want to ship
externally eventually.
Instead of parsing the different components of a function signature,
eagerly look for either the `where` keyword or the function body.

- Also address feedback to use `From` instead of `TryFrom` in cranelift
  contract and ubcheck codegen.
1. Document the new intrinsics.
2. Make the intrinsics actually check the contract if enabled, and
   remove `contract::check_requires` function.
3. Use panic with no unwind in case contract is using to check for
   safety, we probably don't want to unwind. Following the same
   reasoning as UB checks.
This is now a valid expected value.
Comment on lines 611 to 614
/// Allows use of contracts attributes.
(unstable, rustc_contracts, "CURRENT_RUSTC_VERSION", Some(133866)),
/// Allows access to internal machinery used to implement contracts.
(unstable, rustc_contracts_internals, "CURRENT_RUSTC_VERSION", Some(133866)),
Copy link
Contributor

@traviscross traviscross Jan 30, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
/// Allows use of contracts attributes.
(unstable, rustc_contracts, "CURRENT_RUSTC_VERSION", Some(133866)),
/// Allows access to internal machinery used to implement contracts.
(unstable, rustc_contracts_internals, "CURRENT_RUSTC_VERSION", Some(133866)),
/// Allows use of contracts attributes.
(incomplete, contracts, "CURRENT_RUSTC_VERSION", Some(133866)),
/// Allows access to internal machinery used to implement contracts.
(internal, contracts_internals, "CURRENT_RUSTC_VERSION", Some(133866)),

As a lang experiment, these should go in with the experimental warning. Also, the rustc_ bit should be removed from the feature flag.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I go ahead and rename all usages of RustcContract with just Contract?

I also just noticed that contracts_internals feature should be in fact marked as internal. So I'll do that instead.

Expand these two expressions to include a call to contract checking
This has now been approved as a language feature and no longer needs
a `rustc_` prefix.

Also change the `contracts` feature to be marked as incomplete and
`contracts_internals` as internal.
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-llvm-18 failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)
#22 exporting to docker image format
#22 sending tarball 28.1s done
#22 DONE 35.0s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-18]
debug: `DISABLE_CI_RUSTC_IF_INCOMPATIBLE` configured.
---
sccache: Starting the server...
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-18', '--enable-llvm-link-shared', '--set', 'rust.randomize-layout=true', '--set', 'rust.thin-lto-import-instr-limit=10', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'rust.lld=false', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--enable-new-symbol-mangling']
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-18/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.randomize-layout := True
configure: rust.thin-lto-import-instr-limit := 10
---

running 18443 tests
10%  --  1845/18443,  1796 passed, 0 failed, 49 ignored
20%  --  3689/18443,  3634 passed, 0 failed, 55 ignored
   [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_fail_post ... FAILED
   [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_fail_pre ... FAILED
   [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_pass ... FAILED
   [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_fail_pre ... FAILED
   [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_fail_pre ... FAILED
   [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_fail_post ... FAILED
   [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_fail_post ... FAILED
   [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_pass ... FAILED
   [ui] tests/ui/contracts/contract-attributes-generics.rs#unchk_pass ... FAILED
   [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_const_fail ... FAILED
   [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_fail_post ... FAILED
   [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_pass ... FAILED
   [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_fail_pre ... FAILED
   [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_pass ... FAILED
   [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_fail_post ... FAILED
   [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_pass ... FAILED
   [ui] tests/ui/contracts/contracts-ensures-is-not-inherited-when-nesting.rs ... FAILED
   [ui] tests/ui/contracts/contract-captures-via-closure-copy.rs ... FAILED
   [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_fail_pre ... FAILED
   [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_ret ... FAILED
   [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_try ... FAILED
   [ui] tests/ui/contracts/contracts-requires-is-not-inherited-when-nesting.rs ... FAILED
   [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_pass ... FAILED
   [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#unchk_pass ... FAILED
   [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_yeet ... FAILED
   [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#chk_pass ... FAILED
   [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#chk_fail_post ... FAILED
   [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#unchk_fail_post ... FAILED
   [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#unchk_pass ... FAILED
40%  --  7378/18443,  7275 passed, 29 failed, 74 ignored
50%  --  9222/18443,  9107 passed, 29 failed, 86 ignored
60%  -- 11066/18443, 10923 passed, 29 failed, 114 ignored
70%  -- 12911/18443, 12758 passed, 29 failed, 124 ignored
70%  -- 12911/18443, 12758 passed, 29 failed, 124 ignored
80%  -- 14755/18443, 14558 passed, 29 failed, 168 ignored
90%  -- 16599/18443, 16389 passed, 29 failed, 181 ignored
100% -- 18443/18443, 18223 passed, 29 failed, 191 ignored


failures:

---- [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_fail_post stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.chk_fail_post/contract-attributes-nest.chk_fail_post.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-nest.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-nest.rs`

error in revision `chk_fail_post`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-nest.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_post" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.chk_fail_post/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-nest.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_fail_pre stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.chk_fail_pre/contract-attributes-nest.chk_fail_pre.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-nest.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-nest.rs`

error in revision `chk_fail_pre`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-nest.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_pre" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.chk_fail_pre/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-nest.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.chk_pass/contract-attributes-nest.chk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-nest.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-nest.rs`

error in revision `chk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-nest.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.chk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-nest.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_fail_pre stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.unchk_fail_pre/contract-attributes-nest.unchk_fail_pre.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-nest.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-nest.rs`

error in revision `unchk_fail_pre`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-nest.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_fail_pre" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.unchk_fail_pre/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-nest.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_fail_pre stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.chk_fail_pre/contract-attributes-generics.chk_fail_pre.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-generics.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-generics.rs`

error in revision `chk_fail_pre`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-generics.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_pre" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_pre,chk_fail_post,chk_const_fail)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.chk_fail_pre/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-generics.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_fail_post stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.chk_fail_post/contract-attributes-generics.chk_fail_post.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-generics.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-generics.rs`

error in revision `chk_fail_post`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-generics.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_post" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_pre,chk_fail_post,chk_const_fail)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.chk_fail_post/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-generics.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_fail_post stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.unchk_fail_post/contract-attributes-nest.unchk_fail_post.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-nest.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-nest.rs`

error in revision `unchk_fail_post`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-nest.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_fail_post" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.unchk_fail_post/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-nest.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.chk_pass/contract-attributes-generics.chk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-generics.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-generics.rs`

error in revision `chk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-generics.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_pre,chk_fail_post,chk_const_fail)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.chk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-generics.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-generics.rs#unchk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.unchk_pass/contract-attributes-generics.unchk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-generics.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-generics.rs`

error in revision `unchk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-generics.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_pre,chk_fail_post,chk_const_fail)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.unchk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-generics.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_const_fail stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.chk_const_fail/contract-attributes-generics.chk_const_fail.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-generics.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-generics.rs`

error in revision `chk_const_fail`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-generics.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_const_fail" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_pre,chk_fail_post,chk_const_fail)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-generics.chk_const_fail/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-generics.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_fail_post stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.chk_fail_post/contract-attributes-tail.chk_fail_post.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-tail.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-tail.rs`

error in revision `chk_fail_post`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-tail.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_post" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.chk_fail_post/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-tail.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.unchk_pass/contract-attributes-nest.unchk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-nest.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-nest.rs`

error in revision `unchk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-nest.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-nest.unchk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-nest.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_fail_pre stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.chk_fail_pre/contract-attributes-tail.chk_fail_pre.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-tail.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-tail.rs`

error in revision `chk_fail_pre`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-tail.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_pre" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.chk_fail_pre/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-tail.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.chk_pass/contract-attributes-tail.chk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-tail.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-tail.rs`

error in revision `chk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-tail.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.chk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-tail.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_fail_post stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.unchk_fail_post/contract-attributes-tail.unchk_fail_post.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-tail.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-tail.rs`

error in revision `unchk_fail_post`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-tail.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_fail_post" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.unchk_fail_post/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-tail.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.unchk_pass/contract-attributes-tail.unchk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-tail.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-tail.rs`

error in revision `unchk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-tail.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.unchk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-tail.rs:19:12
   |
---
To only update this specific test, also pass `--test-args contracts/contracts-ensures-is-not-inherited-when-nesting.rs`

error: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contracts-ensures-is-not-inherited-when-nesting.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-is-not-inherited-when-nesting/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contracts-ensures-is-not-inherited-when-nesting.rs:3:12
   |
---
To only update this specific test, also pass `--test-args contracts/contract-captures-via-closure-copy.rs`

error: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-captures-via-closure-copy.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-captures-via-closure-copy/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-captures-via-closure-copy.rs:4:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_fail_pre stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.unchk_fail_pre/contract-attributes-tail.unchk_fail_pre.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-attributes-tail.rs:19:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contract-attributes-tail.rs`

error in revision `unchk_fail_pre`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contract-attributes-tail.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_fail_pre" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_pre,unchk_fail_post,chk_pass,chk_fail_pre,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contract-attributes-tail.unchk_fail_pre/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contract-attributes-tail.rs:19:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_ret stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.chk_fail_ret/contracts-ensures-early-fn-exit.chk_fail_ret.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contracts-ensures-early-fn-exit.rs:16:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contracts-ensures-early-fn-exit.rs`

error in revision `chk_fail_ret`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_ret" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_try,chk_fail_ret,chk_fail_yeet)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.chk_fail_ret/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs:16:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_try stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.chk_fail_try/contracts-ensures-early-fn-exit.chk_fail_try.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contracts-ensures-early-fn-exit.rs:16:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contracts-ensures-early-fn-exit.rs`

error in revision `chk_fail_try`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_try" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_try,chk_fail_ret,chk_fail_yeet)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.chk_fail_try/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs:16:12
   |
---
To only update this specific test, also pass `--test-args contracts/contracts-requires-is-not-inherited-when-nesting.rs`

error: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contracts-requires-is-not-inherited-when-nesting.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-requires-is-not-inherited-when-nesting/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contracts-requires-is-not-inherited-when-nesting.rs:3:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.chk_pass/contracts-ensures-early-fn-exit.chk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contracts-ensures-early-fn-exit.rs:16:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contracts-ensures-early-fn-exit.rs`

error in revision `chk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_try,chk_fail_ret,chk_fail_yeet)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.chk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs:16:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#unchk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.unchk_pass/contracts-ensures-early-fn-exit.unchk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contracts-ensures-early-fn-exit.rs:16:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contracts-ensures-early-fn-exit.rs`

error in revision `unchk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_try,chk_fail_ret,chk_fail_yeet)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.unchk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs:16:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_yeet stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.chk_fail_yeet/contracts-ensures-early-fn-exit.chk_fail_yeet.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contracts-ensures-early-fn-exit.rs:16:12
   |
LL | #![feature(contracts)]
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/contracts-ensures-early-fn-exit.rs`

error in revision `chk_fail_yeet`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_yeet" "--check-cfg" "cfg(test,FALSE,unchk_pass,chk_pass,chk_fail_try,chk_fail_ret,chk_fail_yeet)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/contracts-ensures-early-fn-exit.chk_fail_yeet/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/contracts-ensures-early-fn-exit.rs:16:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#chk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/internal_machinery/contract-lang-items.chk_pass/contract-lang-items.chk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-lang-items.rs:15:12
   |
LL | #![feature(contracts)] // to access core::contracts
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/internal_machinery/contract-lang-items.rs`

error in revision `chk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/internal_machinery/contract-lang-items.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_post,chk_pass,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/internal_machinery/contract-lang-items.chk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/internal_machinery/contract-lang-items.rs:15:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#chk_fail_post stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/internal_machinery/contract-lang-items.chk_fail_post/contract-lang-items.chk_fail_post.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-lang-items.rs:15:12
   |
LL | #![feature(contracts)] // to access core::contracts
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/internal_machinery/contract-lang-items.rs`

error in revision `chk_fail_post`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/internal_machinery/contract-lang-items.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "chk_fail_post" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_post,chk_pass,chk_fail_post)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/internal_machinery/contract-lang-items.chk_fail_post/a" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=yes"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/internal_machinery/contract-lang-items.rs:15:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#unchk_fail_post stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/internal_machinery/contract-lang-items.unchk_fail_post/contract-lang-items.unchk_fail_post.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-lang-items.rs:15:12
   |
LL | #![feature(contracts)] // to access core::contracts
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/internal_machinery/contract-lang-items.rs`

error in revision `unchk_fail_post`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/internal_machinery/contract-lang-items.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_fail_post" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_post,chk_pass,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/internal_machinery/contract-lang-items.unchk_fail_post/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/internal_machinery/contract-lang-items.rs:15:12
   |
---
warning: 1 warning emitted
------------------------------------------


---- [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#unchk_pass stdout ----
Saved the actual stderr to "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/internal_machinery/contract-lang-items.unchk_pass/contract-lang-items.unchk_pass.stderr"
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> $DIR/contract-lang-items.rs:15:12
   |
LL | #![feature(contracts)] // to access core::contracts
---
The actual stderr differed from the expected stderr.
To update references, rerun the tests and pass the `--bless` flag
To only update this specific test, also pass `--test-args contracts/internal_machinery/contract-lang-items.rs`

error in revision `unchk_pass`: 1 errors occurred comparing output.
status: exit status: 0
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/contracts/internal_machinery/contract-lang-items.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--cfg" "unchk_pass" "--check-cfg" "cfg(test,FALSE,unchk_pass,unchk_fail_post,chk_pass,chk_fail_post)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/contracts/internal_machinery/contract-lang-items.unchk_pass/a" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "-Zcontract-checks=no"
--- stderr -------------------------------
warning: the feature `contracts` is incomplete and may not be safe to use and/or cause compiler crashes
##[warning]  --> /checkout/tests/ui/contracts/internal_machinery/contract-lang-items.rs:15:12
   |
---



failures:
    [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_fail_post
    [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_fail_pre
    [ui] tests/ui/contracts/contract-attributes-nest.rs#chk_pass
    [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_fail_pre
    [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_fail_pre
    [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_fail_post
    [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_fail_post
    [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_pass
    [ui] tests/ui/contracts/contract-attributes-generics.rs#unchk_pass
    [ui] tests/ui/contracts/contract-attributes-generics.rs#chk_const_fail
    [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_fail_post
    [ui] tests/ui/contracts/contract-attributes-nest.rs#unchk_pass
    [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_fail_pre
    [ui] tests/ui/contracts/contract-attributes-tail.rs#chk_pass
    [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_fail_post
    [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_pass
    [ui] tests/ui/contracts/contracts-ensures-is-not-inherited-when-nesting.rs
    [ui] tests/ui/contracts/contract-attributes-tail.rs#unchk_fail_pre
    [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_ret
    [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_try
    [ui] tests/ui/contracts/contracts-requires-is-not-inherited-when-nesting.rs
    [ui] tests/ui/contracts/contracts-requires-is-not-inherited-when-nesting.rs
    [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_pass
    [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#unchk_pass
    [ui] tests/ui/contracts/contracts-ensures-early-fn-exit.rs#chk_fail_yeet
    [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#chk_pass
    [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#chk_fail_post
    [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#unchk_fail_post
    [ui] tests/ui/contracts/internal_machinery/contract-lang-items.rs#unchk_pass
test result: FAILED. 18223 passed; 29 failed; 191 ignored; 0 measured; 0 filtered out; finished in 180.54s

Some tests failed in compiletest suite=ui mode=ui host=x86_64-unknown-linux-gnu target=x86_64-unknown-linux-gnu
Build completed unsuccessfully in 0:18:25

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
F-rustc_contracts `#![feature(rustc_contracts)]` S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-lang Relevant to the language team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.