<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p><br>
    </p>
    <div class="moz-forward-container"><br>
      <font size="+2">Even screwed up the attempted correction!</font></div>
    <div class="moz-forward-container"><br>
    </div>
    <div class="moz-forward-container">Should have formed the ch2 values
      using bitwise OR instead of addition:</div>
    <div class="moz-forward-container"><br>
    </div>
    <div class="moz-forward-container">Corrected code is:</div>
    <br>
    <div class="moz-forward-container">#include <stdio.h><br>
      <br>
      /* program to test for signedness of plain char in C             
           */<br>
      <br>
      /* assumes that all integral types have an even number of bits */
      <br>
      <br>
      static const char diag[2][9] = { "UNSIGNED", "SIGNED" };<br>
      static const char two           = (char)2;<br>
      <br>
      int main (void)<br>
      {<br>
          int ch1 = (char)2;<br>
          int ch2 = (char)((ch1 << 2) | two);<br>
      <br>
          printf("\nPlain char signedness test: ");<br>
          <br>
          while (ch2 != ch1)<br>
          {<br>
              ch1 = (char)ch2;<br>
              ch2 = (char)((ch1 << 2) | two);<br>
          }<br>
      <br>
          printf ("ch1 = %i, plain char is %s\n", ch1, diag[ (ch1 <
      0) ]);<br>
      <br>
          return 0;<br>
      }<br>
      <br>
    </div>
    <div class="moz-forward-container">Just goes to show how you can
      mess things up in a language you've been using for decades ... and
      why CbyC tooling is your friend. I feel terribly exposed writing C
      without decent tools.<br>
    </div>
    <div class="moz-forward-container"><br>
    </div>
    <div class="moz-forward-container">Heading for evidently necessary
      recaffeination,</div>
    <div class="moz-forward-container"><br>
    </div>
    <div class="moz-forward-container">Olwen</div>
    <div class="moz-forward-container"><br>
    </div>
  </body>
</html>