Mercurial > projects > ldc
comparison gen/classes.cpp @ 327:781af50846b2 trunk
[svn r348] Switch on class invariants (except in release mode).
Generate correct member for classInvariant in classinfo struct.
author | ChristianK |
---|---|
date | Thu, 10 Jul 2008 22:00:27 +0200 |
parents | a9697749e898 |
children | 7086a84ab3d6 |
comparison
equal
deleted
inserted
replaced
326:d7e42b5d8ccd | 327:781af50846b2 |
---|---|
1551 c = build_class_dtor(cd); | 1551 c = build_class_dtor(cd); |
1552 } | 1552 } |
1553 inits.push_back(c); | 1553 inits.push_back(c); |
1554 | 1554 |
1555 // invariant | 1555 // invariant |
1556 // TODO | 1556 if (cd->inv) { |
1557 c = defc->getOperand(8); | 1557 DtoForceDeclareDsymbol(cd->inv); |
1558 c = cd->inv->ir.irFunc->func; | |
1559 // c = llvm::ConstantExpr::getBitCast(c, defc->getOperand(8)->getType()); | |
1560 } | |
1561 else { | |
1562 c = defc->getOperand(8); | |
1563 } | |
1558 inits.push_back(c); | 1564 inits.push_back(c); |
1559 | 1565 |
1560 // uint flags | 1566 // uint flags |
1561 if (cd->isInterfaceDeclaration() || cd->isAbstract()) { | 1567 if (cd->isInterfaceDeclaration() || cd->isAbstract()) { |
1562 c = defc->getOperand(9); | 1568 c = defc->getOperand(9); |