diff options
Diffstat (limited to 'lib/IR/DebugInfo.cpp')
-rw-r--r-- | lib/IR/DebugInfo.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lib/IR/DebugInfo.cpp b/lib/IR/DebugInfo.cpp index bbdff5e483..750231658f 100644 --- a/lib/IR/DebugInfo.cpp +++ b/lib/IR/DebugInfo.cpp @@ -406,9 +406,12 @@ bool DIObjCProperty::Verify() const { return DbgNode->getNumOperands() == 8; } -/// We allow an empty string to represent null. But we don't allow -/// a non-empty string in a MDNode field. +/// Check if a field at position Elt of a MDNode is a MDNode. +/// We currently allow an empty string and an integer. +/// But we don't allow a non-empty string in a MDNode field. static bool fieldIsMDNode(const MDNode *DbgNode, unsigned Elt) { + // FIXME: This function should return true, if the field is null or the field + // is indeed a MDNode: return !Fld || isa<MDNode>(Fld). Value *Fld = getField(DbgNode, Elt); if (Fld && isa<MDString>(Fld) && !cast<MDString>(Fld)->getString().empty()) |