mirror of
https://github.com/NixOS/nix.git
synced 2025-11-11 04:56:01 +01:00
Make ifs and asserts tail-recursive
The local Value object prevented g++ from making a tail call. Not clear why. In any case, not using a temporary makes g++ do the tail call.
This commit is contained in:
parent
4badd7ed17
commit
273322c773
2 changed files with 11 additions and 4 deletions
|
|
@ -145,6 +145,7 @@ public:
|
|||
|
||||
/* Evaluation the expression, then verify that it has the expected
|
||||
type. */
|
||||
inline bool evalBool(Env & env, Expr * e, Value & v);
|
||||
inline bool evalBool(Env & env, Expr * e);
|
||||
inline void evalAttrs(Env & env, Expr * e, Value & v);
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue