This is an archive of the discontinued LLVM Phabricator instance.

Module Debugging: Fix the condition for determining whether a template instantiation is in a module.
ClosedPublic

Authored by aprantl on Apr 22 2016, 3:21 PM.

Details

Reviewers
doug.gregor
Summary

This patch fixes the condition for determining whether the debug info for a template instantiation will exist in an imported clang module by:

  • checking whether the ClassTemplateSpecializationDecl is complete and
  • checking that the instantiation was in a module by looking at the first field.

I also added a negative check to make sure that a typedef to a forward-declared template (with the definition outside of the module) is handled correctly.

Diff Detail

Repository
rL LLVM

Event Timeline

aprantl updated this revision to Diff 54737.Apr 22 2016, 3:21 PM
aprantl retitled this revision from to Module Debugging: Fix the condition for determining whether a template instantiation is in a module..
aprantl updated this object.
aprantl added a reviewer: doug.gregor.
aprantl set the repository for this revision to rL LLVM.
aprantl added a subscriber: cfe-commits.
doug.gregor accepted this revision.Apr 25 2016, 10:03 AM
doug.gregor edited edge metadata.

Yeah, this LGTM.

This revision is now accepted and ready to land.Apr 25 2016, 10:03 AM
aprantl closed this revision.Apr 27 2016, 5:09 PM

Thanks! Committed as 267464, 267633, 267630, 267612, 267611.