anchor.diff:              (name: pkg: isCuda name && lib.elem pkgs.system pkg.meta.platforms)
               pkgs;
   
  +          # Which C++ compilers can we build with? How to name them?
  +          eachCxx = f:
  +            lib.concatMap f (with pkgs; [
  +              stdenv
  +              gcc8Stdenv
  +              gcc9Stdenv
  +              gcc10Stdenv
  +              gcc11Stdenv
  +              clang6Stdenv
  +              clang7Stdenv
  +              clang8Stdenv
  +              clang9Stdenv
  +              clang10Stdenv
  +            ]);
  +          cxxName = stdenv:
  +            lib.optionalString (stdenv != pkgs.stdenv) ("-"
  +              + lib.replaceStrings [ "-wrapper" ] [ "" ] stdenv.cc.pname
  +              + lib.versions.major stdenv.cc.version);
  +
             eachBool = f: lib.concatMap f [ true false ];
             eachCuda = f: lib.concatMap f ([ null ] ++ lib.attrNames cudaAttrs);
             eachConfig = f:
               eachBool (enableDebug:
                 eachCuda (cuda:
  -                f (lib.optionalString (cuda != null) "-${shortenCuda cuda}"
  -                  + lib.optionalString enableDebug "-debug") {
  -                    inherit enableDebug;
  -                    enableCuda = cuda != null;
  -                    cudatoolkit = pkgs.${cuda};
  -                  }));
  +                eachCxx (stdenv:
  +                  f (cxxName stdenv
  +                    + lib.optionalString (cuda != null) "-${shortenCuda cuda}"
  +                    + lib.optionalString enableDebug "-debug") {
  +                      inherit stdenv enableDebug;
  +                      enableCuda = cuda != null;
  +                      cudatoolkit = pkgs.${cuda};
  +                    })));
   
             # Runnable ctypesgen per python. Though it's just the executable we
             # need, it's possible something about ctypes library could change
  
positive.code:             + lib.optionalString enableDebug "-debug" + "-${version}";
            inherit version;
            src = ./.;
            buildInputs = [ ctags ncurses ] ++ lib.optionals enablePython [
              python3
              python3.pkgs.ctypesgen
              python3.pkgs.setuptools
  
negative.code:             hooks.yamllint.enable = true;
            };
  
          in pkgs.mkShellNoCC {
            inherit (pre-commit) shellHook;
  
            # Tempting to include bifrost-doc.buildInputs here, but that requires
  