(cherry picked from commit 023217f07c)
023217f07c
The value pointers of lists with 1 or 2 elements are now stored in the list value itself. In particular, this makes the "concatMap (x: if cond then [(f x)] else [])" idiom cheaper.
This prevents a double allocation per attribute set.
Fixes #294.