libexpr/eval: Fix off by one in maxCallDepth calculation
This isn't really relevant for a setting of 10k, but now that we want to set it to 0 for Flakes it makes a difference as to whether or not one top-level function call is allowed or not. (It shouldn't be) Change-Id: I6bbf99826af0289c232b9d45d172a378b81abe4b
This commit is contained in:
+28
@@ -0,0 +1,28 @@
|
||||
error:
|
||||
… from call site
|
||||
at /pwd/in.nix:2:22:
|
||||
1| # Exactly two function calls deep, so should fail with maxCallDepth < 2
|
||||
2| let f = x: x + 1; in f (f 0)
|
||||
| ^
|
||||
3|
|
||||
|
||||
… while calling 'f'
|
||||
at /pwd/in.nix:2:9:
|
||||
1| # Exactly two function calls deep, so should fail with maxCallDepth < 2
|
||||
2| let f = x: x + 1; in f (f 0)
|
||||
| ^
|
||||
3|
|
||||
|
||||
… while evaluating x
|
||||
at /pwd/in.nix:2:12:
|
||||
1| # Exactly two function calls deep, so should fail with maxCallDepth < 2
|
||||
2| let f = x: x + 1; in f (f 0)
|
||||
| ^
|
||||
3|
|
||||
|
||||
error: stack overflow; max-call-depth exceeded
|
||||
at /pwd/in.nix:2:25:
|
||||
1| # Exactly two function calls deep, so should fail with maxCallDepth < 2
|
||||
2| let f = x: x + 1; in f (f 0)
|
||||
| ^
|
||||
3|
|
||||
Reference in New Issue
Block a user