Blame build/build-clang/r313872.patch
|
Packit |
f0b94e |
Index: tools/dsymutil/DwarfLinker.cpp
|
|
Packit |
f0b94e |
===================================================================
|
|
Packit |
f0b94e |
--- a/llvm/tools/dsymutil/DwarfLinker.cpp (revision 313871)
|
|
Packit |
f0b94e |
+++ b/llvm/tools/dsymutil/DwarfLinker.cpp (revision 313872)
|
|
Packit |
f0b94e |
@@ -1496,7 +1496,11 @@
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
if ((RefCU = getUnitForOffset(Units, RefOffset)))
|
|
Packit |
f0b94e |
- if (const auto RefDie = RefCU->getOrigUnit().getDIEForOffset(RefOffset))
|
|
Packit |
f0b94e |
- return RefDie;
|
|
Packit |
f0b94e |
+ if (const auto RefDie = RefCU->getOrigUnit().getDIEForOffset(RefOffset)) {
|
|
Packit |
f0b94e |
+ // In a file with broken references, an attribute might point to a NULL
|
|
Packit |
f0b94e |
+ // DIE.
|
|
Packit |
f0b94e |
+ if(!RefDie.isNULL())
|
|
Packit |
f0b94e |
+ return RefDie;
|
|
Packit |
f0b94e |
+ }
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
Linker.reportWarning("could not find referenced DIE", &DIE);
|
|
Packit |
f0b94e |
return DWARFDie();
|