diff --git a/src/cmd/compile/internal/noder/writer.go b/src/cmd/compile/internal/noder/writer.go index 6d7bd4c7821..08da36eccbb 100644 --- a/src/cmd/compile/internal/noder/writer.go +++ b/src/cmd/compile/internal/noder/writer.go @@ -1909,7 +1909,7 @@ func (w *writer) expr(expr syntax.Expr) { var rtype types2.Type if tv.IsBuiltin() { - switch obj, _ := lookupObj(w.p, expr.Fun); obj.Name() { + switch obj, _ := lookupObj(w.p, syntax.Unparen(expr.Fun)); obj.Name() { case "make": assert(len(expr.ArgList) >= 1) assert(!expr.HasDots) diff --git a/test/fixedbugs/issue63436.go b/test/fixedbugs/issue63436.go new file mode 100644 index 00000000000..bbd34a5a286 --- /dev/null +++ b/test/fixedbugs/issue63436.go @@ -0,0 +1,9 @@ +// compile + +// Copyright 2023 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +package p + +var _ = (new)(int)