summaryrefslogtreecommitdiff
path: root/mk2rbc/variable.go
diff options
context:
space:
mode:
author Sasha Smundak <asmundak@google.com> 2021-07-09 16:00:57 -0700
committer Sasha Smundak <asmundak@google.com> 2021-07-26 10:25:43 -0700
commit9d011abcd53e861a15e17fa56b2c0792efc8a8a3 (patch)
tree30ada881b1b99bd3701432ac6c7a0c3881d4eac7 /mk2rbc/variable.go
parentb643c7a085de5b03c4f746812a2455fb98d88161 (diff)
Emit mksubst call for $(subst ...)
Bug: 172923994 Test: internal Change-Id: I7994bee61f6f8bdee6eac50ecb8a6064830447a4
Diffstat (limited to 'mk2rbc/variable.go')
-rw-r--r--mk2rbc/variable.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/mk2rbc/variable.go b/mk2rbc/variable.go
index 56db192d8..a650453ea 100644
--- a/mk2rbc/variable.go
+++ b/mk2rbc/variable.go
@@ -26,6 +26,7 @@ type variable interface {
emitSet(gctx *generationContext, asgn *assignmentNode)
emitDefined(gctx *generationContext)
valueType() starlarkType
+ setValueType(t starlarkType)
defaultValueString() string
isPreset() bool
}
@@ -44,6 +45,10 @@ func (v baseVariable) valueType() starlarkType {
return v.typ
}
+func (v *baseVariable) setValueType(t starlarkType) {
+ v.typ = t
+}
+
func (v baseVariable) isPreset() bool {
return v.preset
}
@@ -279,7 +284,7 @@ func (ctx *parseContext) addVariable(name string) variable {
} else if name == strings.ToLower(name) {
// Heuristics: if variable's name is all lowercase, consider it local
// string variable.
- v = &localVariable{baseVariable{nam: name, typ: starlarkTypeString}}
+ v = &localVariable{baseVariable{nam: name, typ: starlarkTypeUnknown}}
} else {
vt := starlarkTypeUnknown
if strings.HasPrefix(name, "LOCAL_") {