diff options
| author | Michael Woerister <michaelwoerister@posteo> | 2014-05-15 15:33:51 +0200 |
|---|---|---|
| committer | Michael Woerister <michaelwoerister@posteo> | 2014-05-29 14:21:03 +0200 |
| commit | eea329b0f71905518902d34ef77c0923096dde1d (patch) | |
| tree | e734cbe1994eb783eb47bc01f106ba69c443689a /src/rustllvm/RustWrapper.cpp | |
| parent | 138089355d7a1bc28fa58f2bea7680af96bd5b92 (diff) | |
| download | rust-eea329b0f71905518902d34ef77c0923096dde1d.tar.gz rust-eea329b0f71905518902d34ef77c0923096dde1d.zip | |
debuginfo: Make DWARF representation of enums uniform.
So far the DWARF information for enums was different for regular enums, univariant enums, Option-like enums, etc. Regular enums were encoded as unions of structs, while the other variants were encoded as bare structs. With the changes in this PR all enums are encoded as unions so that debuggers can reconstruct if something originally was a struct, a univariant enum, or an Option-like enum. For the latter case, information about the Null variant is encoded into the union field name. This information can then be used by the debugger to print a None value actually as None instead of Some(0x0).
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
