Duncan P. N. Exon Smith via llvm-dev
2018-Apr-18 22:28 UTC
[llvm-dev] [cfe-users] How to handle debug information not in source/How do I handle the error 'inlinable function call in a function with debug info must have a !dbg location'
+llvm-dev, Adrian bcc:cfe-users> On Apr 18, 2018, at 14:20, Levo DeLellis via cfe-users <cfe-users at lists.llvm.org> wrote: > > I'm having an issue with the error "inlinable function call in a function with debug info must have a !dbg location" > > My language will automatically call a destructor for you. LLVM is forcing me to use give it debug information. I try to with DILocation however scope is mandatory field. However since the destructor is generated it doesn't exist in source. So when I try making DISubprogram for the scope I need to give it invalid lines. > > What's the best way to handle debugging information that doesn't exist in source? > _______________________________________________ > cfe-users mailing list > cfe-users at lists.llvm.org > http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users
Adrian Prantl via llvm-dev
2018-Apr-18 22:38 UTC
[llvm-dev] [cfe-users] How to handle debug information not in source/How do I handle the error 'inlinable function call in a function with debug info must have a !dbg location'
> On Apr 18, 2018, at 3:28 PM, Duncan P. N. Exon Smith <dexonsmith at apple.com> wrote: > > +llvm-dev, Adrian > bcc:cfe-users > >> On Apr 18, 2018, at 14:20, Levo DeLellis via cfe-users <cfe-users at lists.llvm.org> wrote: >> >> I'm having an issue with the error "inlinable function call in a function with debug info must have a !dbg location" >> >> My language will automatically call a destructor for you. LLVM is forcing me to use give it debug information. I try to with DILocation however scope is mandatory field. However since the destructor is generated it doesn't exist in source. So when I try making DISubprogram for the scope I need to give it invalid lines. >> >> What's the best way to handle debugging information that doesn't exist in source?DWARF reserves line number 0 for exactly this purpose. You can check out how/when clang uses ApplyDebugLocation::CreateArtificial() for some examples. -- adrian>> _______________________________________________ >> cfe-users mailing list >> cfe-users at lists.llvm.org >> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-users >