[INFO] fetching crate syntex_bitflags 0.1.0... [INFO] checking syntex_bitflags-0.1.0 against master#f609b7e0586f81fefb3523e3e17adf779ac416be for pr-129466-2 [INFO] extracting crate syntex_bitflags 0.1.0 into /workspace/builds/worker-3-tc1/source [INFO] validating manifest of crates.io crate syntex_bitflags 0.1.0 on toolchain f609b7e0586f81fefb3523e3e17adf779ac416be [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate syntex_bitflags 0.1.0 [INFO] finished tweaking crates.io crate syntex_bitflags 0.1.0 [INFO] tweaked toml for crates.io crate syntex_bitflags 0.1.0 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 020172dcbf94dd0e3f3ed0f65280fd9918fe548c775b515cc35a5988b761d969 [INFO] running `Command { std: "docker" "start" "-a" "020172dcbf94dd0e3f3ed0f65280fd9918fe548c775b515cc35a5988b761d969", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "020172dcbf94dd0e3f3ed0f65280fd9918fe548c775b515cc35a5988b761d969", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "020172dcbf94dd0e3f3ed0f65280fd9918fe548c775b515cc35a5988b761d969", kill_on_drop: false }` [INFO] [stdout] 020172dcbf94dd0e3f3ed0f65280fd9918fe548c775b515cc35a5988b761d969 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+f609b7e0586f81fefb3523e3e17adf779ac416be" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 69a1926380fcde18e93d619f606465b618e2e44e2792b123d5793bd73a65a368 [INFO] running `Command { std: "docker" "start" "-a" "69a1926380fcde18e93d619f606465b618e2e44e2792b123d5793bd73a65a368", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Checking syntex_bitflags v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: malformed `unstable` attribute input [INFO] [stdout] --> src/lib.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | #![unstable] [INFO] [stdout] | ^^^^^^^^^^^^ help: must be of the form: `#![unstable(feature = "name", reason = "...", issue = "N")]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `panic` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `cfg_match` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `concat_bytes` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `assert` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `cfg` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `column` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `compile_error` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `concat` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `concat_idents` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `const_format_args` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `env` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `file` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `format_args` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `format_args_nl` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `include` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `include_bytes` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `include_str` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `line` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `log_syntax` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `module_path` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `option_env` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `stringify` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `trace_macros` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `assert_eq` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `assert_ne` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `debug_assert` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `debug_assert_eq` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `debug_assert_ne` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `matches` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `todo` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `try` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `unimplemented` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `unreachable` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `write` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: `writeln` is already in scope [INFO] [stdout] --> src/lib.rs:18:14 [INFO] [stdout] | [INFO] [stdout] 18 | #[cfg(test)] #[macro_use] extern crate std; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: macro-expanded `#[macro_use]`s may not shadow existing macros (see RFC 1560) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: malformed `unstable` attribute input [INFO] [stdout] --> src/lib.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | #![unstable] [INFO] [stdout] | ^^^^^^^^^^^^ help: must be of the form: `#![unstable(feature = "name", reason = "...", issue = "N")]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `staged_api` in this scope [INFO] [stdout] --> src/lib.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | #![staged_api] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0734]: stability attributes may not be used outside of the standard library [INFO] [stdout] --> src/lib.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | #![unstable] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0734`. [INFO] [stdout] [INFO] [stdout] error: cannot find attribute `staged_api` in this scope [INFO] [stdout] --> src/lib.rs:12:4 [INFO] [stdout] | [INFO] [stdout] 12 | #![staged_api] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `syntex_bitflags` (lib) due to 4 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0425]: cannot find function `hash` in module `hash` [INFO] [stdout] --> src/lib.rs:479:21 [INFO] [stdout] | [INFO] [stdout] 479 | assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | ^^^^ not found in `hash` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 285 + use std::ptr::hash; [INFO] [stdout] | [INFO] [stdout] help: if you import `hash`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 479 - assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] 479 + assert!(hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `hash` in module `hash` [INFO] [stdout] --> src/lib.rs:479:59 [INFO] [stdout] | [INFO] [stdout] 479 | assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | ^^^^ not found in `hash` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 285 + use std::ptr::hash; [INFO] [stdout] | [INFO] [stdout] help: if you import `hash`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 479 - assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] 479 + assert!(hash::hash::(&x) == hash::(&y)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `hash` in module `hash` [INFO] [stdout] --> src/lib.rs:482:21 [INFO] [stdout] | [INFO] [stdout] 482 | assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | ^^^^ not found in `hash` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 285 + use std::ptr::hash; [INFO] [stdout] | [INFO] [stdout] help: if you import `hash`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 482 - assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] 482 + assert!(hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `hash` in module `hash` [INFO] [stdout] --> src/lib.rs:482:59 [INFO] [stdout] | [INFO] [stdout] 482 | assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | ^^^^ not found in `hash` [INFO] [stdout] | [INFO] [stdout] help: consider importing this function [INFO] [stdout] | [INFO] [stdout] 285 + use std::ptr::hash; [INFO] [stdout] | [INFO] [stdout] help: if you import `hash`, refer to it directly [INFO] [stdout] | [INFO] [stdout] 482 - assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] 482 + assert!(hash::hash::(&x) == hash::(&y)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0734]: stability attributes may not be used outside of the standard library [INFO] [stdout] --> src/lib.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | #![unstable] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `core::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/lib.rs:285:27 [INFO] [stdout] | [INFO] [stdout] 285 | use std::hash::{self, SipHasher}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `core::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/lib.rs:479:35 [INFO] [stdout] | [INFO] [stdout] 479 | assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `core::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/lib.rs:479:73 [INFO] [stdout] | [INFO] [stdout] 479 | assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `core::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/lib.rs:482:35 [INFO] [stdout] | [INFO] [stdout] 482 | assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated struct `core::hash::SipHasher`: use `std::hash::DefaultHasher` instead [INFO] [stdout] --> src/lib.rs:482:73 [INFO] [stdout] | [INFO] [stdout] 482 | assert!(hash::hash::(&x) == hash::hash::(&y)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:180:23 [INFO] [stdout] | [INFO] [stdout] 180 | *self == $BitFlags::empty() [INFO] [stdout] | ----- ^^ ------------------ Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:186:23 [INFO] [stdout] | [INFO] [stdout] 186 | *self == $BitFlags::all() [INFO] [stdout] | ----- ^^ ---------------- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:198:33 [INFO] [stdout] | [INFO] [stdout] 198 | (*self & other) == other [INFO] [stdout] | --------------- ^^ ----- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:180:23 [INFO] [stdout] | [INFO] [stdout] 180 | *self == $BitFlags::empty() [INFO] [stdout] | ----- ^^ ------------------ AnotherSetOfFlags [INFO] [stdout] | | [INFO] [stdout] | AnotherSetOfFlags [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `AnotherSetOfFlags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:186:23 [INFO] [stdout] | [INFO] [stdout] 186 | *self == $BitFlags::all() [INFO] [stdout] | ----- ^^ ---------------- AnotherSetOfFlags [INFO] [stdout] | | [INFO] [stdout] | AnotherSetOfFlags [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `AnotherSetOfFlags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:198:33 [INFO] [stdout] | [INFO] [stdout] 198 | (*self & other) == other [INFO] [stdout] | --------------- ^^ ----- AnotherSetOfFlags [INFO] [stdout] | | [INFO] [stdout] | AnotherSetOfFlags [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `AnotherSetOfFlags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Option` [INFO] [stdout] --> src/lib.rs:325:37 [INFO] [stdout] | [INFO] [stdout] 325 | assert!(Flags::from_bits(0) == Some(Flags::empty())); [INFO] [stdout] | ------------------- ^^ -------------------- Option [INFO] [stdout] | | [INFO] [stdout] | Option [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Option` [INFO] [stdout] --> src/lib.rs:326:39 [INFO] [stdout] | [INFO] [stdout] 326 | assert!(Flags::from_bits(0b1) == Some(FlagA)); [INFO] [stdout] | --------------------- ^^ ----------- Option [INFO] [stdout] | | [INFO] [stdout] | Option [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Option` [INFO] [stdout] --> src/lib.rs:327:40 [INFO] [stdout] | [INFO] [stdout] 327 | assert!(Flags::from_bits(0b10) == Some(FlagB)); [INFO] [stdout] | ---------------------- ^^ ----------- Option [INFO] [stdout] | | [INFO] [stdout] | Option [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Option` [INFO] [stdout] --> src/lib.rs:328:40 [INFO] [stdout] | [INFO] [stdout] 328 | assert!(Flags::from_bits(0b11) == Some(FlagA | FlagB)); [INFO] [stdout] | ---------------------- ^^ ------------------- Option [INFO] [stdout] | | [INFO] [stdout] | Option [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Option` [INFO] [stdout] --> src/lib.rs:329:42 [INFO] [stdout] | [INFO] [stdout] 329 | assert!(Flags::from_bits(0b1000) == None); [INFO] [stdout] | ------------------------ ^^ ---- Option [INFO] [stdout] | | [INFO] [stdout] | Option [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Option` [INFO] [stdout] --> src/lib.rs:331:53 [INFO] [stdout] | [INFO] [stdout] 331 | assert!(AnotherSetOfFlags::from_bits(!0_i8) == Some(AnotherFlag)); [INFO] [stdout] | ----------------------------------- ^^ ----------------- Option [INFO] [stdout] | | [INFO] [stdout] | Option [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `AnotherSetOfFlags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:336:46 [INFO] [stdout] | [INFO] [stdout] 336 | assert!(Flags::from_bits_truncate(0) == Flags::empty()); [INFO] [stdout] | ---------------------------- ^^ -------------- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:337:48 [INFO] [stdout] | [INFO] [stdout] 337 | assert!(Flags::from_bits_truncate(0b1) == FlagA); [INFO] [stdout] | ------------------------------ ^^ ----- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:338:49 [INFO] [stdout] | [INFO] [stdout] 338 | assert!(Flags::from_bits_truncate(0b10) == FlagB); [INFO] [stdout] | ------------------------------- ^^ ----- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:339:49 [INFO] [stdout] | [INFO] [stdout] 339 | assert!(Flags::from_bits_truncate(0b11) == (FlagA | FlagB)); [INFO] [stdout] | ------------------------------- ^^ --------------- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:340:51 [INFO] [stdout] | [INFO] [stdout] 340 | assert!(Flags::from_bits_truncate(0b1000) == Flags::empty()); [INFO] [stdout] | --------------------------------- ^^ -------------- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:341:51 [INFO] [stdout] | [INFO] [stdout] 341 | assert!(Flags::from_bits_truncate(0b1001) == FlagA); [INFO] [stdout] | --------------------------------- ^^ ----- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:343:61 [INFO] [stdout] | [INFO] [stdout] 343 | assert!(AnotherSetOfFlags::from_bits_truncate(0_i8) == AnotherSetOfFlags::empty()); [INFO] [stdout] | ------------------------------------------- ^^ -------------------------- AnotherSetOfFlags [INFO] [stdout] | | [INFO] [stdout] | AnotherSetOfFlags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `AnotherSetOfFlags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:410:20 [INFO] [stdout] | [INFO] [stdout] 410 | assert!(e1 == e2); [INFO] [stdout] | -- ^^ -- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:414:20 [INFO] [stdout] | [INFO] [stdout] 414 | assert!(e3 == AnotherFlag); [INFO] [stdout] | -- ^^ ----------- AnotherSetOfFlags [INFO] [stdout] | | [INFO] [stdout] | AnotherSetOfFlags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `AnotherSetOfFlags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:422:20 [INFO] [stdout] | [INFO] [stdout] 422 | assert!(e1 == FlagB); [INFO] [stdout] | -- ^^ ----- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:426:20 [INFO] [stdout] | [INFO] [stdout] 426 | assert!(e3 == AnotherSetOfFlags::empty()); [INFO] [stdout] | -- ^^ -------------------------- AnotherSetOfFlags [INFO] [stdout] | | [INFO] [stdout] | AnotherSetOfFlags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `AnotherSetOfFlags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:433:27 [INFO] [stdout] | [INFO] [stdout] 433 | assert!((e1 | e2) == FlagABC); // union [INFO] [stdout] | --------- ^^ ------- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:434:27 [INFO] [stdout] | [INFO] [stdout] 434 | assert!((e1 & e2) == FlagC); // intersection [INFO] [stdout] | --------- ^^ ----- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:435:27 [INFO] [stdout] | [INFO] [stdout] 435 | assert!((e1 - e2) == FlagA); // set difference [INFO] [stdout] | --------- ^^ ----- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:436:21 [INFO] [stdout] | [INFO] [stdout] 436 | assert!(!e2 == FlagA); // set complement [INFO] [stdout] | --- ^^ ----- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:437:25 [INFO] [stdout] | [INFO] [stdout] 437 | assert!(e1 ^ e2 == FlagA | FlagB); // toggle [INFO] [stdout] | ------- ^^ ------------- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:440:20 [INFO] [stdout] | [INFO] [stdout] 440 | assert!(e3 == FlagA | FlagB); [INFO] [stdout] | -- ^^ ------------- Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `==` cannot be applied to type `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:444:20 [INFO] [stdout] | [INFO] [stdout] 444 | assert!(m4 == AnotherSetOfFlags::empty()); [INFO] [stdout] | -- ^^ -------------------------- AnotherSetOfFlags [INFO] [stdout] | | [INFO] [stdout] | AnotherSetOfFlags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialEq` might be missing for `AnotherSetOfFlags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialEq` [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `AnotherSetOfFlags` with `#[derive(PartialEq)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:452:21 [INFO] [stdout] | [INFO] [stdout] 452 | assert!(!(a < b) && !(b < a)); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:452:33 [INFO] [stdout] | [INFO] [stdout] 452 | assert!(!(a < b) && !(b < a)); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:454:19 [INFO] [stdout] | [INFO] [stdout] 454 | assert!(a < b); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:456:21 [INFO] [stdout] | [INFO] [stdout] 456 | assert!(!(a < b) && b < a); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:456:31 [INFO] [stdout] | [INFO] [stdout] 456 | assert!(!(a < b) && b < a); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:458:19 [INFO] [stdout] | [INFO] [stdout] 458 | assert!(a < b); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<=` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:466:19 [INFO] [stdout] | [INFO] [stdout] 466 | assert!(a <= b && a >= b); [INFO] [stdout] | - ^^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `>=` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:466:29 [INFO] [stdout] | [INFO] [stdout] 466 | assert!(a <= b && a >= b); [INFO] [stdout] | - ^^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `>` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:468:19 [INFO] [stdout] | [INFO] [stdout] 468 | assert!(a > b && a >= b); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `>=` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:468:28 [INFO] [stdout] | [INFO] [stdout] 468 | assert!(a > b && a >= b); [INFO] [stdout] | - ^^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:469:19 [INFO] [stdout] | [INFO] [stdout] 469 | assert!(b < a && b <= a); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<=` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:469:28 [INFO] [stdout] | [INFO] [stdout] 469 | assert!(b < a && b <= a); [INFO] [stdout] | - ^^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `>` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:471:19 [INFO] [stdout] | [INFO] [stdout] 471 | assert!(b > a && b >= a); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `>=` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:471:28 [INFO] [stdout] | [INFO] [stdout] 471 | assert!(b > a && b >= a); [INFO] [stdout] | - ^^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:472:19 [INFO] [stdout] | [INFO] [stdout] 472 | assert!(a < b && a <= b); [INFO] [stdout] | - ^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: binary operation `<=` cannot be applied to type `Flags` [INFO] [stdout] --> src/lib.rs:472:28 [INFO] [stdout] | [INFO] [stdout] 472 | assert!(a < b && a <= b); [INFO] [stdout] | - ^^ - Flags [INFO] [stdout] | | [INFO] [stdout] | Flags [INFO] [stdout] | [INFO] [stdout] note: an implementation of `PartialOrd` might be missing for `Flags` [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ must implement `PartialOrd` [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider annotating `Flags` with `#[derive(PartialEq, PartialOrd)]` [INFO] [stdout] | [INFO] [stdout] 134 + #[derive(PartialEq, PartialOrd)] [INFO] [stdout] 135 | pub struct $BitFlags { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference [INFO] [stdout] --> src/lib.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | !(*self & other).is_empty() [INFO] [stdout] | -^^^^^--------- [INFO] [stdout] | || [INFO] [stdout] | |move occurs because `*self` has type `Flags`, which does not implement the `Copy` trait [INFO] [stdout] | `*self` moved due to usage in operator [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: calling this operator moves the left-hand side [INFO] [stdout] --> /rustc/f609b7e0586f81fefb3523e3e17adf779ac416be/library/core/src/ops/bit.rs:161:15 [INFO] [stdout] note: if `Flags` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ consider implementing `Clone` for this type [INFO] [stdout] ... [INFO] [stdout] 192 | !(*self & other).is_empty() [INFO] [stdout] | ----- you could clone this value [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `*self` which is behind a shared reference [INFO] [stdout] --> src/lib.rs:192:19 [INFO] [stdout] | [INFO] [stdout] 192 | !(*self & other).is_empty() [INFO] [stdout] | -^^^^^--------- [INFO] [stdout] | || [INFO] [stdout] | |move occurs because `*self` has type `AnotherSetOfFlags`, which does not implement the `Copy` trait [INFO] [stdout] | `*self` moved due to usage in operator [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] note: calling this operator moves the left-hand side [INFO] [stdout] --> /rustc/f609b7e0586f81fefb3523e3e17adf779ac416be/library/core/src/ops/bit.rs:161:15 [INFO] [stdout] note: if `AnotherSetOfFlags` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ consider implementing `Clone` for this type [INFO] [stdout] ... [INFO] [stdout] 192 | !(*self & other).is_empty() [INFO] [stdout] | ----- you could clone this value [INFO] [stdout] ... [INFO] [stdout] 307 | / bitflags! { [INFO] [stdout] 308 | | flags AnotherSetOfFlags: i8 { [INFO] [stdout] 309 | | const AnotherFlag = -1_i8, [INFO] [stdout] 310 | | } [INFO] [stdout] 311 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: borrow of moved value: `e2` [INFO] [stdout] --> src/lib.rs:399:17 [INFO] [stdout] | [INFO] [stdout] 397 | let e2 = FlagA | FlagB; [INFO] [stdout] | -- move occurs because `e2` has type `Flags`, which does not implement the `Copy` trait [INFO] [stdout] 398 | assert!(!e1.contains(e2)); [INFO] [stdout] | -- value moved here [INFO] [stdout] 399 | assert!(e2.contains(e1)); [INFO] [stdout] | ^^ value borrowed here after move [INFO] [stdout] | [INFO] [stdout] note: consider changing this parameter type in method `contains` to borrow instead if owning the value isn't necessary [INFO] [stdout] --> src/lib.rs:197:43 [INFO] [stdout] | [INFO] [stdout] 197 | pub fn contains(&self, other: $BitFlags) -> bool { [INFO] [stdout] | -------- ^^^^^^^^^ this parameter takes ownership of the value [INFO] [stdout] | | [INFO] [stdout] | in this method [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] note: if `Flags` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/lib.rs:134:9 [INFO] [stdout] | [INFO] [stdout] 134 | / pub struct $BitFlags { [INFO] [stdout] 135 | | bits: $T, [INFO] [stdout] 136 | | } [INFO] [stdout] | |_________^ consider implementing `Clone` for this type [INFO] [stdout] ... [INFO] [stdout] 288 | / bitflags! { [INFO] [stdout] 289 | | #[doc = "> The first principle is that you must not fool yourself — and"] [INFO] [stdout] 290 | | #[doc = "> you are the easiest person to fool."] [INFO] [stdout] 291 | | #[doc = "> "] [INFO] [stdout] ... | [INFO] [stdout] 304 | | } [INFO] [stdout] 305 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] ... [INFO] [stdout] 398 | assert!(!e1.contains(e2)); [INFO] [stdout] | -- you could clone this value [INFO] [stdout] = note: this error originates in the macro `bitflags` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 91 previous errors; 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0369, E0382, E0425, E0507, E0734. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0369`. [INFO] [stdout] [INFO] [stderr] error: could not compile `syntex_bitflags` (lib test) due to 92 previous errors; 5 warnings emitted [INFO] running `Command { std: "docker" "inspect" "69a1926380fcde18e93d619f606465b618e2e44e2792b123d5793bd73a65a368", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "69a1926380fcde18e93d619f606465b618e2e44e2792b123d5793bd73a65a368", kill_on_drop: false }` [INFO] [stdout] 69a1926380fcde18e93d619f606465b618e2e44e2792b123d5793bd73a65a368