title: Why are const atomic variables not updated, but static atomic variables are?
body: <p>I have this code:</p>
  
  <pre><code>use std::sync::atomic::{AtomicUsize, Ordering};
  
  const SOME_VAR: AtomicUsize = AtomicUsize::new(0);
  
  fn main() {
      println!("{}", SOME_VAR.load(Ordering::SeqCst));
      println!("{}", SOME_VAR.fetch_add(10, Ordering::SeqCst));
      println!("{}", SOME_VAR.load(Ordering::SeqCst));
  }
  </code></pre>
  
  <p>This prints <code>0 0 0</code> without any errors. In Java, I can use a <code>final HashMap</code> and add <code>(k, v)</code> to it. In Rust, I am surprised that the compiler is not yelling at me but also does not increment my atomic value. Am I doing something wrong here?</p>
  
  <p>If I use a <code>static</code>: </p>
  
  <pre><code>static SOME_VAR: AtomicUsize = AtomicUsize::new(0);
  </code></pre>
  
  <p>I get the result <code>0 0 10</code>. Why does it not work with <code>const</code>?</p>