diff --git a/vendor/cmd/go/internal/cfg/cfg.go b/vendor/cmd/go/internal/cfg/cfg.go
index 5093c28..03a4746 100644
--- a/vendor/cmd/go/internal/cfg/cfg.go
+++ b/vendor/cmd/go/internal/cfg/cfg.go
@@ -86,6 +86,9 @@
 
 	// Used in envcmd.MkEnv and build ID computations.
 	GOARM, GO386, GOMIPS = objabi()
+
+	// C and C++ compilers
+	CC, CXX = compilers()
 )
 
 // Update build context to use our computed GOROOT.
@@ -121,6 +124,34 @@
 	return find("GOARM"), find("GO386"), find("GOMIPS")
 }
 
+func compilers() (CC, CXX string) {
+	data, err := ioutil.ReadFile(filepath.Join(GOROOT, "src/cmd/go/internal/cfg/zdefaultcc.go"))
+	if err != nil {
+		fmt.Fprintf(os.Stderr, "vgo compilers: %v\n", err)
+	}
+
+	find := func(key string) string {
+		if env := os.Getenv(key); env != "" {
+			return env
+		}
+		fi := bytes.Index(data, []byte("Default"+key+"(goos, goarch string)"))
+		if fi < 0 {
+			fmt.Fprintf(os.Stderr, "vgo compilers: cannot find %s\n", key)
+			os.Exit(2)
+		}
+		i := bytes.Index(data[fi:], []byte("\treturn "))
+		if i < 0 {
+			fmt.Fprintf(os.Stderr, "vgo compilers: cannot find %s\n", key)
+			os.Exit(2)
+		}
+		line := data[fi+i:]
+		line = line[bytes.IndexByte(line, '"')+1:]
+		return string(line[:bytes.IndexByte(line, '"')])
+	}
+
+	return find("CC"), find("CXX")
+}
+
 func findGOROOT() string {
 	goroot := findGOROOT1()
 	_, err := os.Stat(filepath.Join(goroot, "api/go1.10.txt"))
diff --git a/vendor/cmd/go/internal/cfg/zdefaultcc.go b/vendor/cmd/go/internal/cfg/zdefaultcc.go
index 28761b7..215d777 100644
--- a/vendor/cmd/go/internal/cfg/zdefaultcc.go
+++ b/vendor/cmd/go/internal/cfg/zdefaultcc.go
@@ -3,13 +3,14 @@
 package cfg
 
 const DefaultPkgConfig = `pkg-config`
+
 func DefaultCC(goos, goarch string) string {
-	switch goos+`/`+goarch {
+	switch goos + `/` + goarch {
 	}
-	return "clang"
+	return CC
 }
 func DefaultCXX(goos, goarch string) string {
-	switch goos+`/`+goarch {
+	switch goos + `/` + goarch {
 	}
-	return "clang++"
+	return CXX
 }
