error[E0600]: cannot apply unary operator `!` to type `BytePos`
  --> $DIR/issue-14091-2.rs:15:5
   |
LL |     assert!(x, x);
   |     ^^^^^^^^^^^^^ cannot apply unary operator `!`
   |
note: an implementation of `Not` might be missing for `BytePos`
  --> $DIR/issue-14091-2.rs:6:1
   |
LL | pub struct BytePos(pub u32);
   | ^^^^^^^^^^^^^^^^^^ must implement `Not`
note: the trait `Not` must be implemented
  --> $SRC_DIR/core/src/ops/bit.rs:LL:COL
   = note: this error originates in the macro `assert` (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to previous error

For more information about this error, try `rustc --explain E0600`.