[pkg-d-commits] [ldc] 38/74: For classes DIBuilder::CreateCompositeType was producing DIType with wrong sizes.

Matthias Klumpp mak at moszumanska.debian.org
Thu Jul 13 20:54:17 UTC 2017


This is an automated email from the git hooks/post-receive script.

mak pushed a commit to annotated tag v1.3.0-beta2
in repository ldc.

commit caa515a69b3693921e2ddbe2861e1f65d3f0e271
Author: Elie Morisse <syniurge at gmail.com>
Date:   Sun May 21 20:16:03 2017 -0300

    For classes DIBuilder::CreateCompositeType was producing DIType with wrong sizes.
    
    Resulting in incorrect values in GDB.
---
 gen/dibuilder.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gen/dibuilder.cpp b/gen/dibuilder.cpp
index bad8697..0a69e60 100644
--- a/gen/dibuilder.cpp
+++ b/gen/dibuilder.cpp
@@ -440,6 +440,8 @@ ldc::DIType ldc::DIBuilder::CreateCompositeType(Type *type) {
   // Use the actual type associated with the declaration, ignoring any
   // const/wrappers.
   LLType *T = DtoType(sd->type);
+  if (t->ty == Tclass)
+    T = llvm::cast<llvm::PointerType>(T)->getElementType();
   IrTypeAggr *ir = sd->type->ctype->isAggr();
   assert(ir);
 

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-d/ldc.git



More information about the pkg-d-commits mailing list