From 1ff19cf6b084b54e4f04b72f080926a4a37d953c Mon Sep 17 00:00:00 2001 From: Devang Patel Date: Wed, 4 Nov 2009 19:37:40 +0000 Subject: Array element size does not match array size but array is not a bitfield. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86043 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/CodeGen/AsmPrinter/DwarfDebug.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp index 23752c4..674304e 100644 --- a/lib/CodeGen/AsmPrinter/DwarfDebug.cpp +++ b/lib/CodeGen/AsmPrinter/DwarfDebug.cpp @@ -1138,7 +1138,9 @@ DIE *DwarfDebug::CreateMemberDIE(CompileUnit *DW_Unit, const DIDerivedType &DT){ AddSourceLine(MemberDie, &DT); uint64_t Size = DT.getSizeInBits(); - uint64_t FieldSize = DT.getOriginalTypeSize(); + uint64_t FieldSize = Size; + if (DT.getTypeDerivedFrom().getTag() != dwarf::DW_TAG_array_type) + FieldSize = DT.getOriginalTypeSize(); if (Size != FieldSize) { // Handle bitfield. -- cgit v1.1