Bug ID 1153314
Summary incorrect debug info generated by rustc due to using somewhat older version of llvm
Classification openSUSE
Product openSUSE Distribution
Version Leap 15.1
Hardware Other
OS Other
Status NEW
Severity Normal
Priority P5 - None
Component Development
Assignee bnc-team-screening@forge.provo.novell.com
Reporter tdevries@suse.com
QA Contact qa-bugs@suse.de
Found By ---
Blocker ---

[ Regression due to upgrade from rustc version 1.32.0 to 1.36.0 ]

On my openSUSE Leap 15.1 laptop I build gdb and ran the gdb testsuite, and ran
into a failure in the gdb.rust testsuite
(https://sourceware.org/bugzilla/show_bug.cgi?id=25048).

The situation on the distro is that (summarizing Tom Tromey's comment here)
with a relatively recent version of Rust but a somewhat older version of LLVM,
the Rust compiler will emit a legacy encoding of enums.

The problem is that there's a bug in the resulting debug info that makes gdb
print incorrect values or "<error reading variable>".

We could get this fixed in the rust compiler, either upstream or locally if
upstream's not interested (which is what Tom Tromy expects), or perhaps make
rustc work with a more recent version of LLVM.

On openSUSE 15.1, we have rustc version 1.36.0 using llvm 7.

On openSUSE tumbleweed (installed in a VM), we have rustc version 1.37.0 and
llvm 8, and there there's no failure.

I tried installing the rustc from devel:languages:rust, and got rustc version
1.38.0 and llvm 7, and the failure was still there.


You are receiving this mail because: