title: Why is it undefined to derefrence a pointer to extern union?
body: <p>I have the following code. Why its undefined to derefrence union pointers in the following way ? </p>
  
  <pre><code>extern union MyUn *P1;          
  extern union MyUn *P2;
  
  extern void myfunc(void)
  {
        *P1 = *P2;                
  }
  </code></pre>