Closed Bug 1982221 Opened 10 months ago Closed 9 months ago

Perma clang-trunk error[E0432]: unresolved import `nss_prelude::SECItemType`

Categories

(Firefox Build System :: General, defect, P5)

defect

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: intermittent-bug-filer, Unassigned)

References

Details

(Keywords: intermittent-failure)

Filed by: csabou [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=521760877&repo=mozilla-central
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/HGhogohfQOyOgQkGy5CTTg/runs/0/artifacts/public/logs/live_backing.log


[task 2025-08-10T03:15:09.002+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1]  /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8
[task 2025-08-10T03:15:09.002+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1]  /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/x86_64-linux-gnu/c++/8
[task 2025-08-10T03:15:09.002+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1]  /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8/../../../../include/c++/8/backward
[task 2025-08-10T03:15:09.003+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1]  /builds/worker/fetches/clang/lib/clang/22/include
[task 2025-08-10T03:15:09.003+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1]  /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/include/x86_64-linux-gnu
[task 2025-08-10T03:15:09.003+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1]  /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/include
[task 2025-08-10T03:15:09.003+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] End of search list.
[task 2025-08-10T03:15:09.003+00:00] 03:15:09     INFO -     Compiling sync-guid v0.1.0 (https://github.com/mozilla/application-services?rev=724f165c31adb85bad94ada2e3f8621481a74754#724f165c)
[task 2025-08-10T03:15:09.003+00:00] 03:15:09     INFO -       Running `CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_CRATE_NAME=sync_guid CARGO_MANIFEST_DIR=/builds/worker/checkouts/gecko/third_party/rust/sync-guid CARGO_MANIFEST_PATH=/builds/worker/checkouts/gecko/third_party/rust/sync-guid/Cargo.toml CARGO_PKG_AUTHORS='Thom Chiovoloni <tchiovoloni@mozilla.com>' CARGO_PKG_DESCRIPTION='' CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE=MPL-2.0 CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=sync-guid CARGO_PKG_README='' CARGO_PKG_REPOSITORY='' CARGO_PKG_RUST_VERSION='' CARGO_PKG_VERSION=0.1.0 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=1 CARGO_PKG_VERSION_PATCH=0 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH=/builds/worker/workspace/obj-build/release/deps /builds/worker/fetches/rustc/bin/rustc --crate-name sync_guid --edition=2021 /builds/worker/checkouts/gecko/third_party/rust/sync-guid/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C panic=abort -C embed-bitcode=no --cfg 'feature="base64"' --cfg 'feature="default"' --cfg 'feature="rand"' --cfg 'feature="random"' --cfg 'feature="rusqlite"' --cfg 'feature="rusqlite_support"' --cfg 'feature="serde"' --cfg 'feature="serde_support"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("base64", "default", "rand", "random", "rusqlite", "rusqlite_support", "serde", "serde_support"))' -C metadata=665bb7570fda212e -C extra-filename=-ebadaa6cc9197815 --out-dir /builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -C linker=/builds/worker/checkouts/gecko/build/cargo-linker -C strip=debuginfo -L dependency=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps -L dependency=/builds/worker/workspace/obj-build/release/deps --extern base64=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/libbase64-89e7278cd9b5b9f4.rmeta --extern rand=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/librand-795208bf81e9a425.rmeta --extern rusqlite=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/librusqlite-5045749f37dbca49.rmeta --extern serde=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/libserde-21cc8283879292b9.rmeta --cap-lints warn -C debuginfo=2 -C force-frame-pointers=yes -Dwarnings -Cembed-bitcode=yes -C codegen-units=1`
[task 2025-08-10T03:15:09.003+00:00] 03:15:09    ERROR -  error[E0432]: unresolved import `nss_prelude::SECItemType`
[task 2025-08-10T03:15:09.003+00:00] 03:15:09     INFO -    --> /builds/worker/checkouts/gecko/third_party/rust/nss-gk-api/src/lib.rs:52:46
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -  52 | pub use nss_prelude::{SECItem, SECItemArray, SECItemType, SECStatus};
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -     |                                              ^^^^^^^^^^^ no `SECItemType` in `nss_prelude`
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] cargo:rerun-if-changed=bindings/nss_ssl.h
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -  warning: unused imports: `PRFileInfo64`, `PRFileInfo`, and `PRIOVec`
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -    --> /builds/worker/checkouts/gecko/third_party/rust/nss-gk-api/src/ssl.rs:27:35
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -  27 |     use crate::prio::{PRFileDesc, PRFileInfo, PRFileInfo64, PRIOVec};
[task 2025-08-10T03:15:09.004+00:00] 03:15:09     INFO -     |                                   ^^^^^^^^^^  ^^^^^^^^^^^^  ^^^^^^^
[task 2025-08-10T03:15:09.005+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.005+00:00] 03:15:09     INFO -  note: the lint level is defined here
[task 2025-08-10T03:15:09.005+00:00] 03:15:09     INFO -    --> /builds/worker/checkouts/gecko/third_party/rust/nss-gk-api/src/lib.rs:7:45
[task 2025-08-10T03:15:09.005+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.005+00:00] 03:15:09     INFO -  7  | #![cfg_attr(feature = "deny-warnings", deny(warnings))]
[task 2025-08-10T03:15:09.005+00:00] 03:15:09     INFO -     |                                             ^^^^^^^^
[task 2025-08-10T03:15:09.005+00:00] 03:15:09     INFO -     = note: `#[warn(unused_imports)]` implied by `#[warn(warnings)]`
[task 2025-08-10T03:15:09.006+00:00] 03:15:09     INFO -       Running `CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_CRATE_NAME=rust_decimal CARGO_MANIFEST_DIR=/builds/worker/checkouts/gecko/third_party/rust/rust_decimal CARGO_MANIFEST_PATH=/builds/worker/checkouts/gecko/third_party/rust/rust_decimal/Cargo.toml CARGO_PKG_AUTHORS='Paul Mason <paul@form1.co.nz>' CARGO_PKG_DESCRIPTION='Decimal number implementation written in pure Rust suitable for financial and fixed-precision calculations.' CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE=MIT CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=rust_decimal CARGO_PKG_README=./README.md CARGO_PKG_REPOSITORY='https://github.com/paupino/rust-decimal' CARGO_PKG_RUST_VERSION=1.60 CARGO_PKG_VERSION=1.28.1 CARGO_PKG_VERSION_MAJOR=1 CARGO_PKG_VERSION_MINOR=28 CARGO_PKG_VERSION_PATCH=1 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH=/builds/worker/workspace/obj-build/release/deps OUT_DIR=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/build/rust_decimal-d13d7c78f1b760db/out /builds/worker/fetches/rustc/bin/rustc --crate-name rust_decimal --edition=2021 /builds/worker/checkouts/gecko/third_party/rust/rust_decimal/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C panic=abort -C embed-bitcode=no --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("arbitrary", "borsh", "bytecheck", "byteorder", "bytes", "c-repr", "db-diesel-mysql", "db-diesel-postgres", "db-diesel1-mysql", "db-diesel1-postgres", "db-diesel2-mysql", "db-diesel2-postgres", "db-postgres", "db-tokio-postgres", "default", "diesel1", "diesel2", "legacy-ops", "maths", "maths-nopanic", "postgres", "rand", "rkyv", "rkyv-safe", "rocket", "rocket-traits", "rust-fuzz", "serde", "serde-arbitrary-precision", "serde-bincode", "serde-float", "serde-str", "serde-with-arbitrary-precision", "serde-with-float", "serde-with-str", "serde_json", "std", "tokio-pg", "tokio-postgres"))' -C metadata=a2a2b2968b4a2cea -C extra-filename=-b1958a368005ec99 --out-dir /builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -C linker=/builds/worker/checkouts/gecko/build/cargo-linker -C strip=debuginfo -L dependency=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps -L dependency=/builds/worker/workspace/obj-build/release/deps --extern arrayvec=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/libarrayvec-854590267f06af93.rmeta --extern num_traits=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/libnum_traits-d69911a65dece72a.rmeta --cap-lints warn -C debuginfo=2 -C force-frame-pointers=yes -Dwarnings -Cembed-bitcode=yes -C codegen-units=1`
[task 2025-08-10T03:15:09.006+00:00] 03:15:09     INFO -     Compiling procfs-core v0.17.0
[task 2025-08-10T03:15:09.006+00:00] 03:15:09     INFO -       Running `CARGO=/builds/worker/fetches/rustc/bin/cargo CARGO_CRATE_NAME=procfs_core CARGO_MANIFEST_DIR=/builds/worker/checkouts/gecko/third_party/rust/procfs-core CARGO_MANIFEST_PATH=/builds/worker/checkouts/gecko/third_party/rust/procfs-core/Cargo.toml CARGO_PKG_AUTHORS='Andrew Chin <achin@eminence32.net>' CARGO_PKG_DESCRIPTION='Data structures and parsing for the linux procfs pseudo-filesystem' CARGO_PKG_HOMEPAGE='' CARGO_PKG_LICENSE='MIT OR Apache-2.0' CARGO_PKG_LICENSE_FILE='' CARGO_PKG_NAME=procfs-core CARGO_PKG_README=README.md CARGO_PKG_REPOSITORY='https://github.com/eminence/procfs' CARGO_PKG_RUST_VERSION=1.48 CARGO_PKG_VERSION=0.17.0 CARGO_PKG_VERSION_MAJOR=0 CARGO_PKG_VERSION_MINOR=17 CARGO_PKG_VERSION_PATCH=0 CARGO_PKG_VERSION_PRE='' LD_LIBRARY_PATH=/builds/worker/workspace/obj-build/release/deps /builds/worker/fetches/rustc/bin/rustc --crate-name procfs_core --edition=2018 /builds/worker/checkouts/gecko/third_party/rust/procfs-core/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --crate-type lib --emit=dep-info,metadata,link -C opt-level=2 -C panic=abort -C embed-bitcode=no --cfg 'feature="serde"' --cfg 'feature="serde1"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("backtrace", "chrono", "default", "serde", "serde1"))' -C metadata=197755ab01f6d97b -C extra-filename=-53cca89ecb4d5fae --out-dir /builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps --target x86_64-unknown-linux-gnu -C linker=/builds/worker/checkouts/gecko/build/cargo-linker -C strip=debuginfo -L dependency=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps -L dependency=/builds/worker/workspace/obj-build/release/deps --extern bitflags=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/libbitflags-eed84e734b99205c.rmeta --extern hex=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/libhex-0fc676e7715f6e9f.rmeta --extern serde=/builds/worker/workspace/obj-build/x86_64-unknown-linux-gnu/release/deps/libserde-21cc8283879292b9.rmeta --cap-lints warn -C debuginfo=2 -C force-frame-pointers=yes -Dwarnings -Cembed-bitcode=yes -C codegen-units=1`
[task 2025-08-10T03:15:09.006+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] clang version 22.0.0git (taskcluster-eZgvLK7ORey6rRIwlLDG3A)
[task 2025-08-10T03:15:09.006+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] Target: x86_64-unknown-linux-gnu
[task 2025-08-10T03:15:09.006+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] Thread model: posix
[task 2025-08-10T03:15:09.006+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] InstalledDir:
[task 2025-08-10T03:15:09.006+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] Found candidate GCC installation: /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8
[task 2025-08-10T03:15:09.007+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] Selected GCC installation: /builds/worker/fetches/sysroot-x86_64-linux-gnu/usr/lib/gcc/x86_64-linux-gnu/8
[task 2025-08-10T03:15:09.007+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] Candidate multilib: .;@m64
[task 2025-08-10T03:15:09.007+00:00] 03:15:09     INFO -  [neqo-crypto 0.14.1] Selected multilib: .;@m64

[task 2025-08-10T03:15:09.017+00:00] 03:15:09     INFO -  [glslopt 0.1.11] cargo:warning=  518 |       if (!HAS_TRIVIAL_DESTRUCTOR(TYPE))                                 \
[task 2025-08-10T03:15:09.017+00:00] 03:15:09     INFO -  [glslopt 0.1.11] cargo:warning=      |            ^
[task 2025-08-10T03:15:09.017+00:00] 03:15:09     INFO -  [glslopt 0.1.11] cargo:warning=glsl-optimizer/src/util/macros.h:195:44: note: expanded from macro 'HAS_TRIVIAL_DESTRUCTOR'
[task 2025-08-10T03:15:09.017+00:00] 03:15:09     INFO -  [glslopt 0.1.11] cargo:warning=  195 | #         define HAS_TRIVIAL_DESTRUCTOR(T) __has_trivial_destructor(T)
[task 2025-08-10T03:15:09.017+00:00] 03:15:09     INFO -  [glslopt 0.1.11] cargo:warning=      |                                            ^
[task 2025-08-10T03:15:09.021+00:00] 03:15:09     INFO -  [glslopt 0.1.11] cargo:warning=4 warnings generated.
[task 2025-08-10T03:15:09.021+00:00] 03:15:09    ERROR -  error[E0609]: no field `type_` on type `&SECItemStr`
[task 2025-08-10T03:15:09.022+00:00] 03:15:09     INFO -    --> /builds/worker/checkouts/gecko/third_party/rust/nss-gk-api/src/util.rs:90:25
[task 2025-08-10T03:15:09.022+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -  90 |         assert_eq!(self.type_, SECItemType::siBuffer);
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -     |                         ^^^^^ unknown field
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -     = note: available field is: `_address`
[task 2025-08-10T03:15:09.023+00:00] 03:15:09    ERROR -  error[E0433]: failed to resolve: use of undeclared type `SECItemType`
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -    --> /builds/worker/checkouts/gecko/third_party/rust/nss-gk-api/src/util.rs:90:32
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -  90 |         assert_eq!(self.type_, SECItemType::siBuffer);
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -     |                                ^^^^^^^^^^^ use of undeclared type `SECItemType`
[task 2025-08-10T03:15:09.023+00:00] 03:15:09    ERROR -  error[E0609]: no field `len` on type `&SECItemStr`
[task 2025-08-10T03:15:09.023+00:00] 03:15:09     INFO -    --> /builds/worker/checkouts/gecko/third_party/rust/nss-gk-api/src/util.rs:93:17
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -  93 |         if self.len != 0 {
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |                 ^^^ unknown field
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     = note: available field is: `_address`
[task 2025-08-10T03:15:09.024+00:00] 03:15:09    ERROR -  error[E0609]: no field `data` on type `&SECItemStr`
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -    --> /builds/worker/checkouts/gecko/third_party/rust/nss-gk-api/src/util.rs:94:45
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -  94 |             std::slice::from_raw_parts(self.data, usize::try_from(self.len).unwrap())
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |                                             ^^^^ unknown field
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     = note: available field is: `_address`
[task 2025-08-10T03:15:09.024+00:00] 03:15:09    ERROR -  error[E0609]: no field `len` on type `&SECItemStr`
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -    --> /builds/worker/checkouts/gecko/third_party/rust/nss-gk-api/src/util.rs:94:72
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -  94 |             std::slice::from_raw_parts(self.data, usize::try_from(self.len).unwrap())
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |                                                                        ^^^ unknown field
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     |
[task 2025-08-10T03:15:09.024+00:00] 03:15:09     INFO -     = note: available field is: `_address`
[task 2025-08-10T03:15:09.024+00:00] 03:15:09    ERROR -  error[E0609]: no field `type_` on type `&SECItemStr`
Status: NEW → RESOLVED
Closed: 9 months ago
Resolution: --- → INCOMPLETE

Looks like this got fixed by bug 1985509, according to the analysis from bug 2038504. Changing status flags accordingly for better visibility - mainly for people building off ESR140 and running into this.

The ESR140 branch is still affected (bug 2038504), which is visible in other issue trackers, e.g.:

An alternative to the above is to build with llvm + clang 21. I was bisecting Firefox and had to build locally for February 2025 (15 months ago, version 137), and to get around this error here without backporting patches, I extracted old archives of llvm 21 and clang 21 to a directory and referenced their bin/ in PATH and the lib/ in LD_LIBRARY_PATH. After that, I could resume the build (except for some other errors unrelated to what was reported here, which I also fixed in their own ways).

Depends on: 2038504
Resolution: INCOMPLETE → FIXED
See Also: → 2038504
Depends on: 1985509
No longer depends on: 2038504
You need to log in before you can comment on or make changes to this bug.