Mercurial > projects > ldc
diff dmd/statement.h @ 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 | df8a7b8d5929 |
children | 3ebc136702dd |
line wrap: on
line diff
--- a/dmd/statement.h Tue Jun 24 22:48:33 2008 +0200 +++ b/dmd/statement.h Wed Jun 25 20:39:09 2008 +0200 @@ -794,14 +794,17 @@ // LLVMDC // non-zero if this is a branch, contains the target - Identifier* isBranchToLabel; + LabelDsymbol* isBranchToLabel; }; struct AsmBlockStatement : CompoundStatement { + TryFinallyStatement *enclosingtryfinally; + AsmBlockStatement(Loc loc, Statements *s); Statements *flatten(Scope *sc); Statement *syntaxCopy(); + Statement *semantic(Scope *sc); CompoundStatement *isCompoundStatement() { return NULL; } AsmBlockStatement *isAsmBlockStatement() { return this; }