# Ensure that builtins.listToAttrs returns the first instance of a key.

let
  inherit (builtins) foldl' listToAttrs;

  input = [{ name = "result"; value = 1; } { name = "result"; value = 2; }];

  # foldl-based version of listToAttrs with the _opposite_ behaviour.
  listToAttrs' = list: foldl' (acc: elem: acc // { ${elem.name} = elem.value; }) { } list;
in
[
  (listToAttrs input).result
  (listToAttrs' input).result
]
