title: When casting an int64 to uint64, is the sign retained?
body: <p>I have an int64 variable which contains a negative number and I wish to subtract it from an uint64 variable which contains a positive number:</p>
  
  <pre><code>var endTime uint64
  now := time.Now().Unix()
  endTime = uint64(now)
  var interval int64
  interval = -3600
  endTime = endTime + uint64(interval)
  </code></pre>
  
  <p>The above code appears to work but I wonder if I can rely on this. I am surprised, being new to Go, that after casting a negative number to uint64 that it remains negative -- I had planned to subtract the now positive value (after casting) to get what I wanted.</p>