diff options
author | Damien Martin-Guillerez <dmarting@google.com> | 2016-03-23 15:48:50 +0000 |
---|---|---|
committer | Damien Martin-Guillerez <dmarting@google.com> | 2016-03-23 15:52:08 +0000 |
commit | 0773430188885e075121ebf720c82bb05a39db21 (patch) | |
tree | bf3139031104fb500d64d6620ae327640cb0b122 /src/main/java/com/google/devtools/build/lib | |
parent | c86ed14323fce0b8c87fdbad9c0ea6d9f264c5d3 (diff) |
Correctly reports error in the workspace file
The previous implementation was hiding errors from before a load
statement as a result of the workspace split.
--
MOS_MIGRATED_REVID=117933781
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java b/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java index 2e0843ca33..b7edfeee04 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java +++ b/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryFunction.java @@ -21,6 +21,7 @@ import com.google.devtools.build.lib.cmdline.Label; import com.google.devtools.build.lib.cmdline.LabelSyntaxException; import com.google.devtools.build.lib.cmdline.RepositoryName; import com.google.devtools.build.lib.concurrent.ThreadSafety.ThreadSafe; +import com.google.devtools.build.lib.events.Event; import com.google.devtools.build.lib.packages.AggregatingAttributeMapper; import com.google.devtools.build.lib.packages.BuildFileContainsErrorsException; import com.google.devtools.build.lib.packages.NoSuchPackageException; @@ -330,9 +331,9 @@ public abstract class RepositoryFunction { if (value == null) { return null; } - // TODO(dmarting): stop at cycle and report a more intelligible error than cycle reporting. Package externalPackage = value.getPackage(); if (externalPackage.containsErrors()) { + Event.replayEventsOn(env.getListener(), externalPackage.getEvents()); throw new RepositoryFunctionException( new BuildFileContainsErrorsException( Label.EXTERNAL_PACKAGE_IDENTIFIER, "Could not load //external package"), |