Stream: t-compiler/help

Topic: name-mangling test failure


Jake Goulding (Mar 04 2020 at 14:10, on Zulip):

Over in the PR adding AVR as tier3, we are getting this failure:

---- [ui] ui/symbol-names/basic.rs#legacy stdout ----
diff of stderr:

- error: symbol-name(_ZN5basic4main17h81759b0695851718E)
+ error: symbol-name(_ZN5basic4main17h7bbff4a01206d8c2E)
3    |
4 LL | #[rustc_symbol_name]

5    | ^^^^^^^^^^^^^^^^^^^^
5    | ^^^^^^^^^^^^^^^^^^^^
6
- error: demangling(basic::main::h81759b0695851718)
+ error: demangling(basic::main::h7bbff4a01206d8c2)
9    |
10 LL | #[rustc_symbol_name]

However, we can't see anything that we would have done that would affect name mangling — anyone have any clues for us?

Amanieu (Mar 04 2020 at 14:31, on Zulip):

@Jake Goulding Maybe double-check any enums you might have modified? It could have caused the hash value of something unrelated to change.

Amanieu (Mar 04 2020 at 14:33, on Zulip):

@Jake Goulding I suspect it is this change: https://github.com/rust-lang/rust/pull/69478/files#diff-81a4a44de0d0b41bdae14ca42259b723R39

Jake Goulding (Mar 04 2020 at 14:34, on Zulip):

...adding a new abi changes the hashes of every symbol? even those that don't use that ABI? That seems... strange.

Amanieu (Mar 04 2020 at 14:34, on Zulip):

Looking at the git logs, it seems that when EfiApi was added the symbol tests were simply updated.

Jake Goulding (Mar 04 2020 at 14:34, on Zulip):

It seems _wrong_ TBH.

Amanieu (Mar 04 2020 at 14:36, on Zulip):

You'll have to ask someone else what the intended behavior is here.

Jake Goulding (Mar 04 2020 at 14:41, on Zulip):

Thank you for pointing to the previous changes. I should have thought to do that

bjorn3 (Mar 04 2020 at 15:01, on Zulip):

The Rust and C abi's are after AvrInterrupt, so adding AvrInterrupt caused their discriminant to increase.

Last update: Apr 03 2020 at 18:15UTC