Mercurial > projects > ldc
view test/classes6.d @ 302:bef811104734 trunk
[svn r323] Branching out of inline asm works.
Renamed emit_finallyblocks to DtoFinallyBlocks and moved to llvmhelpers.
Added enclosingtryfinally to AsmBlockStatement, so branches out of asm blocks respect finallys.
Refactored some GotoStatement code into DtoGoto.
author | ChristianK |
---|---|
date | Wed, 25 Jun 2008 20:39:09 +0200 |
parents | d9d5d59873d8 |
children |
line wrap: on
line source
module classes6; extern(C) int printf(char*, ...); class C { void f() { printf("world\n"); } } class D : C { void f() { printf("moon\n"); } } extern(C) { void srand(uint seed); int rand(); } import llvm.intrinsic; void main() { C c; srand(readcyclecounter()); if (rand() % 2) c = new C; else c = new D; c.f(); }