anchor.diff:      , crossConfig ? null
       , meta ? {}
       , passthru ? {}
  -    , pos ? null # position used in error messages and for meta.position
  +    , pos ? # position used in error messages and for meta.position
  +        (if attrs.meta.description or null != null
  +          then builtins.unsafeGetAttrPos "description" attrs.meta
  +          else builtins.unsafeGetAttrPos "name" attrs)
       , separateDebugInfo ? false
       , outputs ? [ "out" ]
       , __impureHostDeps ? []
  
positive.code:         (map (drv: drv.crossDrv or drv) propagatedBuildInputs)
        ];
      in let
        pos' =
          if pos != null then
            pos
          else if attrs.meta.description or null != null then
            builtins.unsafeGetAttrPos "description" attrs.meta
          else
            builtins.unsafeGetAttrPos "name" attrs;
        pos'' = if pos' != null then "‘" + pos'.file + ":" + toString pos'.line + "’" else "«unknown-file»";
  
  
        remediation = {
          unfree = remediate_whitelist "Unfree";
  
negative.code: 
        # Throw an error if trying to evaluate an non-valid derivation
        validityCondition =
               let v = checkValidity attrs;
               in if !v.valid
                 then throwEvalHelp (removeAttrs v ["valid"])
                 else true;
  