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; }