title: Error: "Cannot modify the return value" c#
body: <p>I'm using auto-implemented properties. 
  I guess the fastest way to fix following is to declare my own backing variable?</p>
  
  <pre><code>public Point Origin { get; set; }
  
  Origin.X = 10; // fails with CS1612
  </code></pre>
  
  <blockquote>
    <p>Error Message: Cannot modify the return value of 'expression' because
    it is not a variable</p>
    
    <p>An attempt was made to modify a value type that was the result of an
    intermediate expression. Because the value is not persisted, the value
    will be unchanged. </p>
    
    <p>To resolve this error, store the result of the expression in an
    intermediate value, or use a reference type for the intermediate
    expression.</p>
  </blockquote>