anchor.diff:    ghcCommandCaps = toUpper ghcCommand;
   
   in
  +
  +assert allPkgconfigDepends != [] -> pkgconfig != null;
  +
   stdenv.mkDerivation ({
     name = "${optionalString (hasActiveLibrary && pname != "ghcjs") "haskell-"}${pname}-${version}";
   
  
positive.code: , useCpphs ? false
  } @ args:
  
  assert pkgconfigDepends != [] -> pkgconfig != null;
  assert editedCabalFile != null -> revision != null;
  
  let
  
negative.code:   isHaskellPkg = x: (x ? pname) && (x ? version) && (x ? env);
    isSystemPkg = x: !isHaskellPkg x;
  
    allPkgconfigDepends = pkgconfigDepends ++ libraryPkgconfigDepends ++ executablePkgconfigDepends ++
                          optionals doCheck testPkgconfigDepends;
  
    propagatedBuildInputs = buildDepends ++ libraryHaskellDepends ++ executableHaskellDepends;
    otherBuildInputs = extraLibraries ++ librarySystemDepends ++ executableSystemDepends ++
                       buildTools ++ libraryToolDepends ++ executableToolDepends ++
                       optionals (allPkgconfigDepends != []) ([pkgconfig] ++ allPkgconfigDepends) ++
                       optionals doCheck (testDepends ++ testHaskellDepends ++ testSystemDepends);
    allBuildInputs = propagatedBuildInputs ++ otherBuildInputs;
  
  