Mercurial > projects > ldc
diff dmd/scope.h @ 309:d59c363fccad trunk
[svn r330] Implemented synchronized statements.
Changed the tryfinally handlers to a more generalized EnclosingHandler.
Changed ClassInfoS to be mutable so they can be used as locks.
Added new BB after throw ala return/break etc.
author | lindquist |
---|---|
date | Sat, 28 Jun 2008 11:37:53 +0200 |
parents | 5acec6b2eef8 |
children | d4e95db0e62b |
line wrap: on
line diff
--- a/dmd/scope.h Sat Jun 28 05:57:16 2008 +0200 +++ b/dmd/scope.h Sat Jun 28 11:37:53 2008 +0200 @@ -29,6 +29,7 @@ struct AnonymousAggregateDeclaration; struct FuncDeclaration; struct DocComment; +struct EnclosingHandler; enum LINK; enum PROT; @@ -45,7 +46,7 @@ LabelStatement *slabel; // enclosing labelled statement SwitchStatement *sw; // enclosing switch statement TryFinallyStatement *tf; // enclosing try finally statement; set inside its finally block - TryFinallyStatement *tfOfTry; // enclosing try finally statement; set inside its try block + EnclosingHandler *tfOfTry; // enclosing try-finally, volatile or synchronized statement; set inside its try or body block Statement *sbreak; // enclosing statement that supports "break" Statement *scontinue; // enclosing statement that supports "continue" ForeachStatement *fes; // if nested function for ForeachStatement, this is it