about summary refs log tree commit diff
path: root/src/rustllvm/RustWrapper.cpp
diff options
context:
space:
mode:
authorMichael Woerister <michaelwoerister@posteo>2014-06-16 14:28:05 +0200
committerAlex Crichton <alex@alexcrichton.com>2014-06-16 18:16:10 -0700
commit88e157619019894bbd3ecda0e3a1c9be4ce89ad6 (patch)
treef609de8f552a3d8d666f7fb9279f9481515cb8de /src/rustllvm/RustWrapper.cpp
parentb5d9e941f52c67b8628f9044da7c24371335a15d (diff)
downloadrust-88e157619019894bbd3ecda0e3a1c9be4ce89ad6.tar.gz
rust-88e157619019894bbd3ecda0e3a1c9be4ce89ad6.zip
debuginfo: Correctly handle indirectly recursive types.
So far handling some indirectly recursive types, such as pointer types, has relied on LLVM metadata uniquing in a very implicit way. This could cause some inconsistencies in the debuginfo, and sometimes to hard to trace LLVM assertions.
With this commit unique type IDs and the TypeMap are used to explicitly make sure that no inconsistencies exist, and, if in the future some regression re-introduces one, give a better error message instead of the hard-to-interpret LLVM error.
Diffstat (limited to 'src/rustllvm/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions