}
/// Verify - Verify that a variable descriptor is well formed.
-bool DIExpression::Verify() const { return isExpression(); }
+bool DIExpression::Verify() const {
+ // Empty DIExpressions may be represented as a nullptr.
+ if (!DbgNode)
+ return true;
+
+ return isExpression();
+}
/// Verify - Verify that a location descriptor is well formed.
bool DILocation::Verify() const {
case DW_OP_piece: {
unsigned Offset = getElement(++I);
unsigned Size = getElement(++I);
- OS << " offset=" << Offset << ", size= " << Size;
+ OS << " offset=" << Offset << ", size=" << Size;
break;
}
default:
- break;
+ // Else bail out early. This may be a line table entry.
+ OS << "Unknown]";
+ return;
}
OS << "]";
}