Mercurial > projects > ldc
diff gen/llvmhelpers.cpp @ 812:6c2ff06c4201
Fixed a nasty bug with how interface vtables for class initializers were output, causing some class fields to be skipped.
Fixed a problem in definition of ClassInfos where an invalid constant was potentially used. This needs to be looked into proper as it might happen again in the future.
author | Tomas Lindquist Olsen <tomas.l.olsen@gmail.com> |
---|---|
date | Mon, 01 Dec 2008 04:37:54 +0100 |
parents | c62c6936635b |
children | d128381e086e |
line wrap: on
line diff
--- a/gen/llvmhelpers.cpp Mon Dec 01 02:10:16 2008 +0100 +++ b/gen/llvmhelpers.cpp Mon Dec 01 04:37:54 2008 +0100 @@ -1005,6 +1005,7 @@ // refine the global's opaque type to the type of the initializer llvm::cast<LLOpaqueType>(glob->type.get())->refineAbstractTypeTo(initVal->getType()); + assert(!glob->constInit); glob->constInit = initVal; bool istempl = false;