diff options
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/rules')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java index c8c0c86494..3898b60ef2 100644 --- a/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java +++ b/src/main/java/com/google/devtools/build/lib/rules/SkylarkRuleClassFunctions.java @@ -531,7 +531,13 @@ public class SkylarkRuleClassFunctions { PackageContext pkgContext = (PackageContext) env.lookup(PackageFactory.PKG_CONTEXT); BuildLangTypedAttributeValuesMap attributeValues = new BuildLangTypedAttributeValuesMap((Map<String, Object>) args[0]); - return RuleFactory.createAndAddRule(pkgContext, ruleClass, attributeValues, ast, env); + return RuleFactory.createAndAddRule( + pkgContext, + ruleClass, + attributeValues, + ast, + env, + pkgContext.getAttributeContainerFactory().apply(ruleClass)); } catch (InvalidRuleException | NameConflictException | NoSuchVariableException e) { throw new EvalException(ast.getLocation(), e.getMessage()); } |