anchor.diff:    exposeAllUnfoldings = import ./expose-all-unfoldings.nix { };
   
     # For GHC and GHCJS
  -  any = _: _: {};
  +  any = _: _: { };
     any-8 = import ./any-8.nix { inherit haskellLib lib getGhcVersion; };
     any-8_6 = import ./any-8.6.nix { inherit haskellLib fetchFromGitHub; inherit (nixpkgs) pkgs; };
     any-head = import ./any-head.nix { inherit haskellLib fetchFromGitHub; };
   
     # Just for GHC, usually to sync with GHCJS
  -  ghc-8_6 = _: _: {};
  -  ghc-head = _: _: {};
  +  ghc-8_6 = _: _: { };
  +  ghc-head = _: _: { };
   
     profiling = import ./profiling.nix {
       inherit haskellLib;
  
positive.code:     (optionalExtension (nixpkgs.stdenv.hostPlatform.isWasm or false) wasm)
  
      user-custom-post
    ] self super;
  
    combined-any = self: super: foldExtensions [
      any
      (optionalExtension (versionWildcard [ 8 ] (getGhcVersion super.ghc)) combined-any-8)
    ] self super;
  
    combined-any-8 = self: super: foldExtensions [
      any-8
      (optionalExtension (versionWildcard [ 8 6 ] (getGhcVersion super.ghc)) any-8_6)
      (optionalExtension (lib.versionOlder "8.11"  (getGhcVersion super.ghc)) any-head)
    ] self super;
  
    combined-ghc = self: super: foldExtensions [
      (optionalExtension (versionWildcard [ 8 6 ] super.ghc.version) ghc-8_6)
      (optionalExtension (lib.versionOlder "8.11"  super.ghc.version) ghc-head)
    ] self super;
  
    combined-ghcjs = self: super: foldExtensions [
      (optionalExtension (versionWildcard [ 8 6 ] (getGhcVersion super.ghc)) combined-ghcjs-8_6)
      (optionalExtension (versionWildcard [ 8 10 ] (getGhcVersion super.ghc)) combined-ghcjs-8_10)
    ] self super;
  
    combined-ghcjs-8_6 = self: super: foldExtensions [
      ghcjs_8_6
  
negative.code: 
      (optionalExtension enableExposeAllUnfoldings exposeAllUnfoldings)
  
      # Force "gold" on aarch32 due to a linker bug on bfd
      # Also force -fPIC on for aarch32, we need it either way
      (optionalExtension (super.ghc.stdenv.targetPlatform.isAarch32 or false) (self: super:
        {
          mkDerivation = drv: super.mkDerivation (drv // {
            buildFlags = [
              "--ghc-option=-optl-fuse-ld=gold"
              "--ld-option=-fuse-ld=gold"
              "--ghc-option=-fPIC"
            ] ++ (drv.buildFlags or [ ]);
  
            configureFlags = [
              "--with-ld=${super.ghc.stdenv.targetPlatform.config}-ld.gold"
            ] ++ (drv.configureFlags or [ ]);
          });
        }))
  
      combined-any
      (optionalExtension (!(super.ghc.isGhcjs or false)) combined-ghc)
      (optionalExtension (super.ghc.isGhcjs or false) combined-ghcjs)
  