[llvm-dev] How to resolve debug info forward types

David Blaikie via llvm-dev llvm-dev at lists.llvm.org
Wed Feb 24 14:11:49 PST 2016

There are replaceable MD nodes - you could check how Clang does this when
encountering a declaration, then a definition:

struct foo;
void f(foo *) {
struct foo {
void g(foo) {

Should exercise "Build a declaration", "build a definition", "replace
declaration with definition"

On Wed, Feb 24, 2016 at 2:09 PM, Rodney M. Bates via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> Before metadata was separated from values, I could create a debug info
> forward
> declaration and eventually resolve it using LLVMReplaceAllUsesWith in
> core.h.
> Now, I can't figure out how to resolve it.  I can find no function that
> seems
> to do this.  My one wild guess that giving the forward decl and the
> resolving
> decl the same UniqueId might do it is not working.
> I am currently using 3.6.1, but I see nothing the voluminous diff of
> DIBuilder
> from 3.6.1 to 3.7.1 that looks like it has anything to do with this.
> --
> Rodney Bates
> rodney.m.bates at acm.org
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160224/ad044303/attachment.html>

More information about the llvm-dev mailing list