title: Return pointer to local struct
body: <p>I see some code samples with constructs like this:</p>
  
  <pre><code>type point struct {
    x, y int
  }
  
  func newPoint() *point {
    return &amp;point{10, 20}
  }
  </code></pre>
  
  <p>I have C++ background and it seems like error for me. What are the semantic of such construct? Is new point allocated on the stack or heap?</p>