[svn] r5926: nemerle/trunk/ncc: generation/ILEmitter.n
testsuite/positive/matching.n
malekith
svnadmin at nemerle.org
Fri Nov 11 01:51:46 CET 2005
Log:
Fix a problem with superflous brfalse being emitted.
Author: malekith
Date: Fri Nov 11 01:51:44 2005
New Revision: 5926
Modified:
nemerle/trunk/ncc/generation/ILEmitter.n
nemerle/trunk/ncc/testsuite/positive/matching.n
Modified: nemerle/trunk/ncc/generation/ILEmitter.n
==============================================================================
--- nemerle/trunk/ncc/generation/ILEmitter.n (original)
+++ nemerle/trunk/ncc/generation/ILEmitter.n Fri Nov 11 01:51:44 2005
@@ -575,6 +575,7 @@
// most of other expressions here are TExpr.Ref
emit (expr);
Mark (cond_expr.loc);
+ unless (expr.Throws)
_ilg.Emit (OpCodes.Brfalse, else_label);
}
}
Modified: nemerle/trunk/ncc/testsuite/positive/matching.n
==============================================================================
--- nemerle/trunk/ncc/testsuite/positive/matching.n (original)
+++ nemerle/trunk/ncc/testsuite/positive/matching.n Fri Nov 11 01:51:44 2005
@@ -1473,6 +1473,16 @@
System.Console.WriteLine (foo ([1,2]));
SwitchGoto.MType.go();
+
+
+ // would trigger verification problems:
+ def idl = [] : list [string];
+
+ match (7) {
+ | 12 when idl is [_] => 7
+ | _ => 17
+ }
+
}
}
More information about the svn
mailing list