[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Dotgnu-pnet-commits] CVS: pnet/codegen cg_stmt.tc,1.30,1.31
From: |
Rhys Weatherley <address@hidden> |
Subject: |
[Dotgnu-pnet-commits] CVS: pnet/codegen cg_stmt.tc,1.30,1.31 |
Date: |
Tue, 05 Nov 2002 17:20:07 -0500 |
Update of /cvsroot/dotgnu-pnet/pnet/codegen
In directory subversions:/tmp/cvs-serv17137/codegen
Modified Files:
cg_stmt.tc
Log Message:
ILNode_Try: make sure that the finally block's try range covers the
catch clauses.
Index: cg_stmt.tc
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/codegen/cg_stmt.tc,v
retrieving revision 1.30
retrieving revision 1.31
diff -C2 -r1.30 -r1.31
*** cg_stmt.tc 20 Oct 2002 20:38:28 -0000 1.30
--- cg_stmt.tc 5 Nov 2002 22:20:02 -0000 1.31
***************
*** 1991,1994 ****
--- 1991,2000 ----
{
fputs("\t.try {\n", info->asmOutput);
+ if(node->finallyClause && node->catchClauses)
+ {
+ /* We need two levels of ".try" if we have both
+ "catch" and "finally" blocks */
+ fputs("\t.try {\n", info->asmOutput);
+ }
}
***************
*** 2034,2037 ****
--- 2040,2050 ----
if(node->finallyClause)
{
+ if(node->catchClauses)
+ {
+ if(info->asmOutput)
+ {
+ fputs("\t}\n", info->asmOutput);
+ }
+ }
ILNode_GenDiscard(node->finallyClause, info);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Dotgnu-pnet-commits] CVS: pnet/codegen cg_stmt.tc,1.30,1.31,
Rhys Weatherley <address@hidden> <=