comparison gen/tollvm.cpp @ 160:b77664331d06 trunk

[svn r176] Fixed a bug with class constructors.
author lindquist
date Sun, 04 May 2008 04:35:27 +0200
parents 5c17f81fc1c1
children 3a891cfcd249
comparison
equal deleted inserted replaced
159:5acec6b2eef8 160:b77664331d06
1626 1626
1627 if (_init && _init->getType() != _type) 1627 if (_init && _init->getType() != _type)
1628 _type = _init->getType(); 1628 _type = _init->getType();
1629 llvm::cast<llvm::OpaqueType>(gIR->irDsymbol[vd].irGlobal->type.get())->refineAbstractTypeTo(_type); 1629 llvm::cast<llvm::OpaqueType>(gIR->irDsymbol[vd].irGlobal->type.get())->refineAbstractTypeTo(_type);
1630 _type = gIR->irDsymbol[vd].irGlobal->type.get(); 1630 _type = gIR->irDsymbol[vd].irGlobal->type.get();
1631 //_type->dump();
1631 assert(!_type->isAbstract()); 1632 assert(!_type->isAbstract());
1632 1633
1633 llvm::GlobalVariable* gvar = llvm::cast<llvm::GlobalVariable>(gIR->irDsymbol[vd].irGlobal->value); 1634 llvm::GlobalVariable* gvar = llvm::cast<llvm::GlobalVariable>(gIR->irDsymbol[vd].irGlobal->value);
1634 if (!(vd->storage_class & STCextern) && (vd->getModule() == gIR->dmodule || istempl)) 1635 if (!(vd->storage_class & STCextern) && (vd->getModule() == gIR->dmodule || istempl))
1635 { 1636 {