text/template: reduce maxExecDepth for gccgo further
authorIan Lance Taylor <ian@gcc.gnu.org>
Mon, 8 Aug 2016 22:55:29 +0000 (22:55 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Mon, 8 Aug 2016 22:55:29 +0000 (22:55 +0000)
    We already lowered the limit of recursive template invocations from
    100,000 to 10,000, but the tests still fail occasionally on
    x86_64-pc-linux-gnu when using GNU ld (so that split stacks are not
    fully functional).  Reduce the limit further, to 1000, enough so that
    the test passes consistently.

    Permitting 1000 recursive template invocations still seems capacious
    enough for real world use.

    Reviewed-on: https://go-review.googlesource.com/25590

From-SVN: r239261

gcc/go/gofrontend/MERGE
libgo/go/text/template/exec.go

index a8bc62c0c7fdaea3383aa4739ef6d87807a21f87..8a0c76f7fe6b4139b25029d9397e8b528dfd40b2 100644 (file)
@@ -1,4 +1,4 @@
-672db63f342c99bdc7ed46f040038440f429e600
+3b9c57a35370f26e6cf5839084e367e75e45ec97
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
index 7cf7bb69c817de8e997ca630e358562af0630ff5..c7c6d5049005d6bb8d0265988a8f425aaab2f116 100644 (file)
@@ -19,9 +19,9 @@ import (
 // templates. This limit is only practically reached by accidentally
 // recursive template invocations. This limit allows us to return
 // an error instead of triggering a stack overflow.
-// For gccgo we make this 10000 rather than 100000 to avoid stack overflow
+// For gccgo we make this 1000 rather than 100000 to avoid stack overflow
 // on non-split-stack systems.
-const maxExecDepth = 10000
+const maxExecDepth = 1000
 
 // state represents the state of an execution. It's not part of the
 // template so that multiple executions of the same template