title: golang initializing struct with embedded template: too few values in struct initializer
body: <p>I'm trying to initialize a golang struct with an embedded template. Since templates have no fields, I would expect that assigning the correct number of variables to a constructor would work, but instead the compiler complains that </p>
  
  <pre><code>main.go:17:19: too few values in struct initializer
  
  package main
  
  import "fmt"
  
  type TestTemplate interface {
      Name() string
  }
  
  type TestBase struct {
      name       string
  
      TestTemplate
  }
  
  func New(name string) *TestBase {
      return &amp;TestBase{name} // This fails
      //return &amp;TestBase{name: name} // This works
  }
  
  func (v *TestBase) Name() string {
      return v.name
  }
  
  func main() {
      fmt.Println(New("Hello"))
  }
  </code></pre>