Sized Hierarchy: Part I by davidtwco · Pull Request #137944 · rust-lang/rust (original) (raw)

#18 exporting to docker image format
#18 sending tarball 20.0s done
#18 DONE 27.0s
##[endgroup]
Setting extra environment values for docker:  --env ENABLE_GCC_CODEGEN=1 --env GCC_EXEC_PREFIX=/usr/lib/gcc/
[CI_JOB_NAME=x86_64-gnu-llvm-19]
[CI_JOB_NAME=x86_64-gnu-llvm-19]
debug: `DISABLE_CI_RUSTC_IF_INCOMPATIBLE` configured.
---
sccache: Listening on address 127.0.0.1:4226
##[group]Configure the build
configure: processing command line
configure: 
configure: build.configure-args := ['--build=x86_64-unknown-linux-gnu', '--llvm-root=/usr/lib/llvm-19', '--enable-llvm-link-shared', '--set', 'rust.randomize-layout=true', '--set', 'rust.thin-lto-import-instr-limit=10', '--set', 'build.print-step-timings', '--enable-verbose-tests', '--set', 'build.metrics', '--enable-verbose-configure', '--enable-sccache', '--disable-manage-submodules', '--enable-locked-deps', '--enable-cargo-native-static', '--set', 'rust.codegen-units-std=1', '--set', 'dist.compression-profile=balanced', '--dist-compression-formats=xz', '--set', 'rust.lld=false', '--disable-dist-src', '--release-channel=nightly', '--enable-debug-assertions', '--enable-overflow-checks', '--enable-llvm-assertions', '--set', 'rust.verify-llvm-ir', '--set', 'rust.codegen-backends=llvm,cranelift,gcc', '--set', 'llvm.static-libstdcpp', '--set', 'gcc.download-ci-gcc=true', '--enable-new-symbol-mangling']
configure: build.build          := x86_64-unknown-linux-gnu
configure: target.x86_64-unknown-linux-gnu.llvm-config := /usr/lib/llvm-19/bin/llvm-config
configure: llvm.link-shared     := True
configure: rust.randomize-layout := True
configure: rust.thin-lto-import-instr-limit := 10
---
test [ui] tests/ui/sized-hierarchy/default-bound.rs ... ok
test [ui] tests/ui/single-use-lifetime/zero-uses-in-fn.rs ... ok
test [ui] tests/ui/sized-hierarchy/default-supertrait.rs ... ok
test [ui] tests/ui/sized-borrowed-pointer.rs ... ok
test [ui] tests/ui/sized-hierarchy/pointee-supertrait.rs ... ok
test [ui] tests/ui/sized-hierarchy/overflow.rs ... FAILED
test [ui] tests/ui/sized-hierarchy/trait-aliases.rs ... ok
test [ui] tests/ui/sized-hierarchy/impls.rs ... ok
test [ui] tests/ui/sized-hierarchy/pretty-print-opaque-no-feat.rs ... ok
test [ui] tests/ui/sized/coinductive-1-gat.rs ... ok
test [ui] tests/ui/sized/coinductive-1.rs#current ... ok
test [ui] tests/ui/sized-hierarchy/pretty-print-opaque.rs ... ok
test [ui] tests/ui/sized/coinductive-1.rs#next ... ok
test [ui] tests/ui/sized/dont-incompletely-prefer-built-in.rs#current ... ok
test [ui] tests/ui/sized-hierarchy/generic-const-exprs.rs ... ok
test [ui] tests/ui/sized/dont-incompletely-prefer-built-in.rs#next ... ok
test [ui] tests/ui/sized-hierarchy/pretty-print-no-feat-dep-has-feat.rs ... ok
test [ui] tests/ui/sized-owned-pointer.rs ... ok
test [ui] tests/ui/sized-hierarchy/pretty-print-no-feat.rs ... ok
test [ui] tests/ui/sized-hierarchy/pretty-print.rs ... ok
test [ui] tests/ui/sized/recursive-type-pass.rs ... ok
test [ui] tests/ui/sized/ensure-overriding-bindings-in-pattern-with-ty-err-doesnt-ice.rs ... ok
---
---- [ui] tests/ui/sized-hierarchy/overflow.rs stdout ----

error: test compilation failed although it shouldn't!
status: exit status: 1
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/sized-hierarchy/overflow.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/x86_64-unknown-linux-gnu/stage2" "--target=x86_64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "--emit" "metadata" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/x86_64-unknown-linux-gnu/test/ui/sized-hierarchy/overflow" "-A" "unused" "-A" "internal_features" "-Crpath" "-Cdebuginfo=0" "-Lnative=/checkout/obj/build/x86_64-unknown-linux-gnu/native/rust-test-helpers" "--crate-type=lib"
stdout: none
--- stderr -------------------------------
error[E0275]: overflow evaluating the requirement `Element: Sized`
##[error]  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:33:30
   |
LL |           pub struct <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>n</mi><mi>a</mi><mi>m</mi><mi>e</mi><mo stretchy="false">(</mo><mi>p</mi><mi>u</mi><mi>b</mi><mo>&lt;</mo></mrow><annotation encoding="application/x-tex">name(pub &lt;</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord mathnormal">nam</span><span class="mord mathnormal">e</span><span class="mopen">(</span><span class="mord mathnormal">p</span><span class="mord mathnormal">u</span><span class="mord mathnormal">b</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">&lt;</span></span></span></span>parse_type as ParseTokens>::Output);
   |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | / define_parser_combinator! {
LL | |     Element,
LL | |     Group<(
LL | |         Box<ElementArray>,
LL | |         Box<ElementArray>,
LL | |     )>
LL | | }
   | |_- in this macro invocation
   |
note: required for `Group<(Element, Element)>` to implement `ParseTokens`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:49:38
   |
LL | impl<A: ParseTokens, B: ParseTokens> ParseTokens for Group<(A, B)> {
   |      -                               ^^^^^^^^^^^     ^^^^^^^^^^^^^
   |      |
   |      unsatisfied trait bound introduced here
note: required because it appears within the type `ElementArray`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:62:5
   |
LL |     ElementArray,
   |     ^^^^^^^^^^^^
note: required for `Box<ElementArray>` to implement `ParseTokens`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:41:31
   |
LL | impl<T: ParseTokens + ?Sized> ParseTokens for Box<T> {
   |      -                        ^^^^^^^^^^^     ^^^^^^
   |      |
   |      unsatisfied trait bound introduced here
   = note: 1 redundant requirement hidden
   = note: required for `Group<(Box<ElementArray>, Box<ElementArray>)>` to implement `ParseTokens`
   = note: this error originates in the macro `define_parser_combinator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0275]: overflow evaluating the requirement `(Element, Element): MetaSized`
##[error]  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:35:30
   |
LL |           impl ParseTokens for $name {
   |                                ^^^^^
...
LL | / define_parser_combinator! {
LL | |     Element,
LL | |     Group<(
LL | |         Box<ElementArray>,
LL | |         Box<ElementArray>,
LL | |     )>
LL | | }
   | |_- in this macro invocation
   |
note: required because it appears within the type `ElementArray`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:62:5
   |
LL |     ElementArray,
   |     ^^^^^^^^^^^^
note: required for `Box<ElementArray>` to implement `ParseTokens`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:41:31
   |
LL | impl<T: ParseTokens + ?Sized> ParseTokens for Box<T> {
   |      -                        ^^^^^^^^^^^     ^^^^^^
   |      |
   |      unsatisfied trait bound introduced here
   = note: 1 redundant requirement hidden
   = note: required for `Group<(Box<ElementArray>, Box<ElementArray>)>` to implement `ParseTokens`
note: required because it appears within the type `Element`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:54:5
   |
LL |     Element,
   |     ^^^^^^^
note: required by a bound in `ParseTokens`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:27:1
   |
LL | / pub trait ParseTokens {
LL | |     type Output;
LL | | }
   | |_^ required by this bound in `ParseTokens`
   = note: this error originates in the macro `define_parser_combinator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0275]: overflow evaluating the requirement `ElementArray: MetaSized`
##[error]  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:33:30
   |
LL |           pub struct <span class="katex"><span class="katex-mathml"><math xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mrow><mi>n</mi><mi>a</mi><mi>m</mi><mi>e</mi><mo stretchy="false">(</mo><mi>p</mi><mi>u</mi><mi>b</mi><mo>&lt;</mo></mrow><annotation encoding="application/x-tex">name(pub &lt;</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="base"><span class="strut" style="height:1em;vertical-align:-0.25em;"></span><span class="mord mathnormal">nam</span><span class="mord mathnormal">e</span><span class="mopen">(</span><span class="mord mathnormal">p</span><span class="mord mathnormal">u</span><span class="mord mathnormal">b</span><span class="mspace" style="margin-right:0.2778em;"></span><span class="mrel">&lt;</span></span></span></span>parse_type as ParseTokens>::Output);
   |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
LL | / define_parser_combinator! {
LL | |     ElementArray,
LL | |     Group<(
LL | |         Element,
LL | |         Element,
LL | |     )>
LL | | }
   | |_- in this macro invocation
   |
note: required for `Box<ElementArray>` to implement `ParseTokens`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:41:31
   |
LL | impl<T: ParseTokens + ?Sized> ParseTokens for Box<T> {
   |      -                        ^^^^^^^^^^^     ^^^^^^
   |      |
   |      unsatisfied trait bound introduced here
   = note: 1 redundant requirement hidden
   = note: required for `Group<(Box<ElementArray>, Box<ElementArray>)>` to implement `ParseTokens`
note: required because it appears within the type `Element`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:54:5
   |
LL |     Element,
   |     ^^^^^^^
note: required for `Group<(Element, Element)>` to implement `ParseTokens`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:49:38
   |
LL | impl<A: ParseTokens, B: ParseTokens> ParseTokens for Group<(A, B)> {
   |      -                               ^^^^^^^^^^^     ^^^^^^^^^^^^^
   |      |
   |      unsatisfied trait bound introduced here
   = note: this error originates in the macro `define_parser_combinator` (in Nightly builds, run with -Z macro-backtrace for more info)

error[E0275]: overflow evaluating the requirement `Box<ElementArray>: ParseTokens`
##[error]  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:35:30
   |
LL |           impl ParseTokens for $name {
   |                                ^^^^^
...
LL | / define_parser_combinator! {
LL | |     ElementArray,
LL | |     Group<(
LL | |         Element,
LL | |         Element,
LL | |     )>
LL | | }
   | |_- in this macro invocation
   |
note: required for `Group<(Box<ElementArray>, Box<ElementArray>)>` to implement `ParseTokens`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:49:38
   |
LL | impl<A: ParseTokens, B: ParseTokens> ParseTokens for Group<(A, B)> {
   |         -----------                  ^^^^^^^^^^^     ^^^^^^^^^^^^^
   |         |
   |         unsatisfied trait bound introduced here
note: required because it appears within the type `Element`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:54:5
   |
LL |     Element,
   |     ^^^^^^^
note: required for `Group<(Element, Element)>` to implement `ParseTokens`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:49:38
   |
LL | impl<A: ParseTokens, B: ParseTokens> ParseTokens for Group<(A, B)> {
   |      -                               ^^^^^^^^^^^     ^^^^^^^^^^^^^
   |      |
   |      unsatisfied trait bound introduced here
note: required because it appears within the type `ElementArray`
  --> /checkout/tests/ui/sized-hierarchy/overflow.rs:62:5