aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/cmd/compile/internal/typecheck/expr.go6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/cmd/compile/internal/typecheck/expr.go b/src/cmd/compile/internal/typecheck/expr.go
index 2eec8d41ad..44a69f0332 100644
--- a/src/cmd/compile/internal/typecheck/expr.go
+++ b/src/cmd/compile/internal/typecheck/expr.go
@@ -634,16 +634,16 @@ func tcIndex(n *ir.IndexExpr) ir.Node {
func tcLenCap(n *ir.UnaryExpr) ir.Node {
n.X = Expr(n.X)
n.X = DefaultLit(n.X, nil)
- n.X = implicitstar(n.X)
l := n.X
t := l.Type()
if t == nil {
n.SetType(nil)
return n
}
-
var ok bool
- if n.Op() == ir.OLEN {
+ if t.IsPtr() && t.Elem().IsArray() {
+ ok = true
+ } else if n.Op() == ir.OLEN {
ok = okforlen[t.Kind()]
} else {
ok = okforcap[t.Kind()]