From a3cc3d043d580d083f5dd573cb66d299cd985604 Mon Sep 17 00:00:00 2001
From: Dominik Vogt <vogt@linux.vnet.ibm.com>
Date: Tue, 9 Sep 2014 09:30:09 +0100
Subject: [PATCH 2/9] TEST: Add a recover test.
---
gcc/testsuite/go.test/test/recover.go | 13 +++++++++++++
1 file changed, 13 insertions(+)
@@ -113,10 +113,23 @@ func withoutRecover() {
mustNotRecover() // because it's a sub-call
}
+func withoutRecoverRecursive(n int) {
+ if (n == 0) {
+ withoutRecoverRecursive(1)
+ } else {
+ v := recover()
+ if v != nil {
+ println("spurious recover (recursive)", v)
+ die()
+ }
+ }
+}
+
func test1() {
defer mustNotRecover() // because mustRecover will squelch it
defer mustRecover(1) // because of panic below
defer withoutRecover() // should be no-op, leaving for mustRecover to find
+ defer withoutRecoverRecursive(0) // ditto
panic(1)
}
--
1.8.4.2