[PATCH] D42734: [DebugInfo] Improvements to representation of enumeration types (PR36168)

Volodymyr Sapsai via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Feb 13 15:22:06 PST 2018


vsapsai added a comment.

Hi, Momchil. I suspect this change caused

> Assertion failed: (DTy), function constructEnumTypeDIE, file /Users/buildslave/jenkins/workspace/clang-stage1-configure-RA/llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp, line 1436.

on the build bot http://green.lab.llvm.org/green/job/clang-stage2-Rthinlto/ For example, see http://green.lab.llvm.org/green/job/clang-stage2-Rthinlto/8694/console

Earlier instead of `assert(DTy);` we had

  if (DTy) {
    addType(Buffer, DTy);
    addFlag(Buffer, dwarf::DW_AT_enum_class);
  }

I don't know where the bug is but maybe it makes sense to remove assertion for now and correctly handle nullptr `DTy`? This will unblock the build bot for others and after that you can work on better fix if required.



================
Comment at: llvm/trunk/lib/CodeGen/AsmPrinter/DwarfUnit.cpp:1435
+  if (DD->getDwarfVersion() >= 4 && (CTy->getFlags() & DINode::FlagFixedEnum)) {
+    assert(DTy);
+    addFlag(Buffer, dwarf::DW_AT_enum_class);
----------------
Talking about this assertion.


Repository:
  rL LLVM

https://reviews.llvm.org/D42734





More information about the llvm-commits mailing list