Uploaded image for project: 'Funtoo Linux'
  1. Funtoo Linux
  2. FL-11500

[dev-kit] dev-util/just-1.14.0 fails to compile with dev-lang/rust-1.71.1

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Medium (Ebuild) Medium (Ebuild)
    • None
    • None
    • Hide
      Ensure that rustc version 1.71.1 is installed on your Funtoo system (either via dev-lang/rust-bin or dev-lang/rust
      emerge -av1 =dev-util/just-1.14.0
      Show
      Ensure that rustc version 1.71.1 is installed on your Funtoo system (either via dev-lang/rust-bin or dev-lang/rust emerge -av1 =dev-util/just-1.14.0
    • This will likely break on the next rust-bin upgrade.

      During the testing and validation of https://bugs.funtoo.org/browse/FL-11497 , I found that dev-util/just-1.14.0 fails to compile with dev-lang/rust-1.71.1. Here is the fun error below:

       

           Running `rustc --crate-name just --edition=2021 src/main.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type bin --emit=dep-info,link -C opt-level=3 -C lto --cfg 'feature="default"' -C metadata=ff597bfe87630f72 -C extra-filename=-ff597bfe87630f72 --out-dir /var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps -L dependency=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps --extern ansi_term=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libansi_term-e099eb7b3b66a342.rlib --extern atty=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libatty-c37b6df0fc0c75d2.rlib --extern camino=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libcamino-9128dd71d07effe9.rlib --extern clap=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libclap-63400b5cceba324f.rlib --extern ctrlc=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libctrlc-6bba8a4f76b2c30b.rlib --extern derivative=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libderivative-a58c93c92a530b84.so --extern dotenvy=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libdotenvy-8091a2877f3e3f81.rlib --extern edit_distance=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libedit_distance-00b1d780f929f2a8.rlib --extern env_logger=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libenv_logger-19e4152396edcb6c.rlib --extern heck=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libheck-ae0cf1c4b328b6f3.rlib --extern just=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libjust-c4be164ff1b46b20.rlib --extern lexiclean=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/liblexiclean-1967f4109b9f1e57.rlib --extern libc=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/liblibc-bf9779db65b9f024.rlib --extern log=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/liblog-ec78876f03a4700b.rlib --extern regex=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libregex-1ad17bb9e39433f4.rlib --extern serde=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libserde-5cae1ec4d3638e48.rlib --extern serde_json=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libserde_json-396b8b7e331d195f.rlib --extern sha2=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libsha2-17593dedd99fa4d6.rlib --extern similar=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libsimilar-dafd29b2fe130313.rlib --extern snafu=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libsnafu-66b4162066e5d04e.rlib --extern strum=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libstrum-ecd3ce4a655111e1.rlib --extern target=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libtarget-000900a87a733778.rlib --extern tempfile=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libtempfile-4c26dc5af33f6316.rlib --extern typed_arena=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libtyped_arena-de4549f44b15bab8.rlib --extern unicode_width=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libunicode_width-b881fd53724a9673.rlib --extern uuid=/var/tmp/portage/dev-util/just-1.14.0/work/just-1.14.0/target/release/deps/libuuid-bc2b03de94a77b58.rlib -C target-cpu=znver3`
      rustc: /var/tmp/portage/dev-lang/rust-1.71.1/work/rustc-1.71.1-src/src/llvm-project/llvm/lib/Analysis/InstructionPrecedenceTracking.cpp:97: void llvm::InstructionPrecedenceTracking::validate(const llvm::BasicBlock*) const: Assertion
      `It->second == nullptr && "Block is marked as having special instructions but in fact it  has " "none!"' failed.
      error: could not compile `just` (bin "just")
       * Messages for package dev-util/just-1.14.0:
       * ERROR: dev-util/just-1.14.0::dev-kit failed (compile phase):
       *   cargo build failed
       *
       * Call stack:
       *     ebuild.sh, line   93:  Called src_compile
       *   environment, line 1341:  Called cargo_src_compile
       *   environment, line  486:  Called die
       * The specific snippet of code:
       *       "${@}" || die "cargo build failed"
      

      The key error from rustc being:

      rustc: /var/tmp/portage/dev-lang/rust-1.71.1/work/rustc-1.71.1-src/src/llvm-project/llvm/lib/Analysis/InstructionPrecedenceTracking.cpp:97: void llvm::InstructionPrecedenceTracking::validate(const llvm::BasicBlock*) const: Assertion `It->second == nullptr && "Block is marked as having special instructions but in fact it  has " "none!"' failed.

      It is clearly an underlying compilation error with Rust's llvm component. Once dev-lang/rust-bin-1.71.1 is in the tree someone can try to reproduce this more. If that is the case and we can validate+confirm things more exhaustively, then we could have an actual rust compiler bug or alternatively a just upstream bug.

       

            siris siris
            siris siris
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: