diff options
author | Eric Fellheimer <felly@google.com> | 2015-04-01 22:37:47 +0000 |
---|---|---|
committer | Han-Wen Nienhuys <hanwen@google.com> | 2015-04-02 12:49:47 +0000 |
commit | f6579daf14986c2727b82b843324fc4679cb0d0f (patch) | |
tree | a2aeee12c9d673bbbd92556e80016eae8fcd5a9c /src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java | |
parent | e955287c84e4bcaf309e57ddab1bf808ce3cf046 (diff) |
Remove direct store of Target from NoSuchTargetException. Instead, just note the fact that a valid Target exists, and instead request it directly from its Package.
--
MOS_MIGRATED_REVID=90107670
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java index 1abec5d635..a1c1968c35 100644 --- a/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java +++ b/src/main/java/com/google/devtools/build/lib/skyframe/SkyframeLabelVisitor.java @@ -121,6 +121,12 @@ final class SkyframeLabelVisitor implements TransitivePackageLoader { } warnAboutLoadingFailure(topLevelLabel, eventHandler); for (SkyKey badKey : errorInfo.getRootCauses()) { + if (badKey.functionName() == SkyFunctions.PACKAGE) { + // Transitive target function may ask for a Package, but don't include this in the root + // causes. We'll get more precise information from dependencies on transitive and direct + // target dependencies. + continue; + } Preconditions.checkState(badKey.argument() instanceof Label, "%s %s %s", key, errorInfo, badKey); rootCauses.put(topLevelLabel, (Label) badKey.argument()); |