diff options
author | David Blaikie <dblaikie@gmail.com> | 2013-10-22 20:28:55 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2013-10-22 20:28:55 +0000 |
commit | c960816625ce47aea8368451b0025fbdcd15011a (patch) | |
tree | f79ad374ad47c349cb4193f55f3401311c0d283c /lib | |
parent | 67fa53989a7bb05083966a694ad0c2e9b62ed683 (diff) | |
download | external_llvm-c960816625ce47aea8368451b0025fbdcd15011a.zip external_llvm-c960816625ce47aea8368451b0025fbdcd15011a.tar.gz external_llvm-c960816625ce47aea8368451b0025fbdcd15011a.tar.bz2 |
DIEHashing: Provide an assert for unreachable functionality regarding friends.
Since (as of r190716) Clang no longer emits debug info for C++ friend
declarations (and it seems GCC never has/does, which was the motivation
for the Clang change), there's no actual reachable case for implementing
the part of DWARF 4, Section 7.27 part 5 that pertains to friends.
Leave an assert here so that if/when we do have a client producing
friends and using type units, we can fill in the gap and add appropriate
(unit and feature) tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@193193 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r-- | lib/CodeGen/AsmPrinter/DIEHash.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/CodeGen/AsmPrinter/DIEHash.cpp b/lib/CodeGen/AsmPrinter/DIEHash.cpp index 9a1f966..ea5cbad 100644 --- a/lib/CodeGen/AsmPrinter/DIEHash.cpp +++ b/lib/CodeGen/AsmPrinter/DIEHash.cpp @@ -200,6 +200,9 @@ void DIEHash::hashAttribute(AttrEntry Attr, dwarf::Tag Tag) { if (const DIEEntry *EntryAttr = dyn_cast<DIEEntry>(Value)) { DIE *Entry = EntryAttr->getEntry(); + assert(Tag != dwarf::DW_TAG_friend && "No current LLVM clients emit friend " + "tags. Add support here when there's " + "a use case"); // Step 5 // If the tag in Step 3 is one of [the below tags] if ((Tag == dwarf::DW_TAG_pointer_type || |