anchor.diff:  
       # We have a libc++ directly, we have one via "smuggled" GCC, or we have one
       # bundled with the C compiler because it is GCC
  -    + optionalString (libcxx != null || (isClang && !(stdenv.targetPlatform.useLLVM or false) && gccForLibs.langCC or false) || (isGNU && cc.langCC or false)) ''
  +    + optionalString (libcxx != null || (useGccForLibs && gccForLibs.langCC or false) || (isGNU && cc.langCC or false)) ''
         touch "$out/nix-support/libcxx-cxxflags"
         touch "$out/nix-support/libcxx-ldflags"
       ''
  -    + optionalString (libcxx == null && (isClang && !(stdenv.targetPlatform.useLLVM or false) && gccForLibs.langCC or false)) ''
  +    + optionalString (libcxx == null && (useGccForLibs && gccForLibs.langCC or false)) ''
         for dir in ${gccForLibs}/include/c++/*; do
           echo "-isystem $dir" >> $out/nix-support/libcxx-cxxflags
         done
  
positive.code:     if buildPackages.stdenv.hasCC && buildPackages.stdenv.cc != "/dev/null"
      then import ../expand-response-params { inherit (buildPackages) stdenv; }
      else "";
  
    # older compilers (for example bootstrap's GCC 5) fail with -march=too-modern-cpu
    isGccArchSupported = arch:
  
negative.code:     ##
      ## GCC libs for non-GCC support
      ##
      + optionalString useGccForLibs ''
  
        echo "-B${gccForLibs}/lib/gcc/${targetPlatform.config}/${gccForLibs.version}" >> $out/nix-support/cc-cflags
        echo "-L${gccForLibs}/lib/gcc/${targetPlatform.config}/${gccForLibs.version}" >> $out/nix-support/cc-ldflags
  