| 
 | 
In the following code, assume that both unsigned short and unsigned char are narrower than int.
   int f(void)
   {
       unsigned short us;
       unsigned char uc;
   
       return uc < us;
   }
In this example,
both automatics are either promoted to int
or to unsigned int,
so the comparison is sometimes unsigned and sometimes signed.
However,
the ANSI C compiler will not warn you because the result
is the same for the two choices.