title: How to safely convert/copy volatile variable?
body: <pre><code>volatile char* sevensegment_char_value;
  
  void ss_load_char(volatile char *digits) {
      ...
      int l=strlen(digits);
      ...
   }
  
   ss_load_char(sevensegment_char_value);
  </code></pre>
  
  <p>In the above example I've got warning from avr-gcc compiler</p>
  
  <pre><code>Warning 6   passing argument 1 of 'strlen' discards 'volatile' qualifier from pointer target type [enabled by default]
  </code></pre>
  
  <p>So I have to somehow copy the value from volatile to non-volatile var? What is the safe workaround?</p>