Display toolchain name in dependency cycle error message.

When a dependency cycle is detected, GN would print the cycle without
toolchain labels for each target, which can make the output confusing,
masking the real error. For example, consider something like:

  //foo/bar --> //foo/bar(//toolchain:zoo) --> //foo/bar

GN used to print:

  ERROR: Dependency cycle:
  //foo/bar ->
  //foo/bar ->
  //foo/bar

Which completely masked the issue. This patch forces the error message
to include the label with the toolchain.

Change-Id: If22fdfa6ecc0ac0a83115ad328fba61fa80e2abc
Reviewed-on: https://gn-review.googlesource.com/c/gn/+/10720
Reviewed-by: David Turner <digit@google.com>
Reviewed-by: Brett Wilson <brettw@chromium.org>
Commit-Queue: David Turner <digit@google.com>
diff --git a/src/gn/builder.cc b/src/gn/builder.cc
index 9193eb6..0634935 100644
--- a/src/gn/builder.cc
+++ b/src/gn/builder.cc
@@ -592,7 +592,7 @@
 
   std::string ret;
   for (size_t i = 0; i < cycle.size(); i++) {
-    ret += "  " + cycle[i]->label().GetUserVisibleName(false);
+    ret += "  " + cycle[i]->label().GetUserVisibleName(loader_->GetDefaultToolchain());
     if (i != cycle.size() - 1)
       ret += " ->";
     ret += "\n";