diff --git a/lib/IRGen/IRGenDebugInfo.cpp b/lib/IRGen/IRGenDebugInfo.cpp index 89cfb9b8b03..3b9df13107d 100644 --- a/lib/IRGen/IRGenDebugInfo.cpp +++ b/lib/IRGen/IRGenDebugInfo.cpp @@ -974,6 +974,8 @@ void IRGenDebugInfo::emitVariableDeclaration(IRBuilder& Builder, llvm::RoundUpToAlignment(Dim.Size, Dim.Align) / SizeOfByte; assert(Offset*8+Dim.Size<=Var.getSizeInBits(DIRefMap) && "pars > totum"); + if (Size == 0) + break; Var = DBuilder.createVariablePiece(Descriptor, Offset, Size); Offset += Size; }