aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java
index d963dda924..23d841deba 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppCompileAction.java
@@ -167,7 +167,7 @@ public class CppCompileAction extends AbstractAction implements IncludeScannable
* Set when the action prepares for execution. Used to preserve state between preparation and
* execution.
*/
- private Collection<? extends ActionInput> additionalInputs = null;
+ private Collection<Artifact> additionalInputs = null;
/**
* Creates a new action to compile C/C++ source files.
@@ -303,17 +303,21 @@ public class CppCompileAction extends AbstractAction implements IncludeScannable
return true;
}
+ @Nullable
@Override
- public void discoverInputs(ActionExecutionContext actionExecutionContext)
+ public Collection<Artifact> discoverInputs(ActionExecutionContext actionExecutionContext)
throws ActionExecutionException, InterruptedException {
Executor executor = actionExecutionContext.getExecutor();
+ Collection<Artifact> returnValue = null;
try {
- this.additionalInputs = executor.getContext(CppCompileActionContext.class)
+ returnValue = executor.getContext(CppCompileActionContext.class)
.findAdditionalInputs(this, actionExecutionContext);
} catch (ExecException e) {
throw e.toActionExecutionException("Include scanning of rule '" + getOwner().getLabel() + "'",
executor.getVerboseFailures(), this);
}
+ this.additionalInputs = returnValue == null ? ImmutableList.<Artifact>of() : returnValue;
+ return returnValue;
}
@Override