Debug Info: update comments and add a FIXME.
authorManman Ren <manman.ren@gmail.com>
Thu, 25 Jul 2013 21:19:31 +0000 (21:19 +0000)
committerManman Ren <manman.ren@gmail.com>
Thu, 25 Jul 2013 21:19:31 +0000 (21:19 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@187157 91177308-0d34-0410-b5e6-96231b3b80d8

lib/IR/DebugInfo.cpp

index bbdff5e4831b85e3399c2043901fce1a1ac6b48c..750231658f1edb4165cbe5f8446fd9e83dab4695 100644 (file)
@@ -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())