Promoción integral con el operador <<

Similar a la pregunta¿Bitshift y promoción de enteros?, Tengo una pregunta acerca de la promoción de enteros cuando uso desplazadores de bits a la izquierda.

unsigned int test(void)
{
  unsigned char value8;
  unsigned int result;

  value8 = 0x12;
  result = value8 << 8;
  return result;
}

En este caso, ¿será el value8 el primer ascenso a un unsiged int o su implementación es específica?

6.5.7 Operadores de cambio bitwise... 3 Sematicas ...
Las promociones enteras se realizan en cada uno de los operandos. El tipo de resultado es el del operando izquierdo promovido. Si el valor del operando derecho es negativo o es mayor o igual que el ancho del operando izquierdo promovido, el comportamiento no está definido.

Dice que el"Las promociones enteras se realizan en cada uno de los operandos"., pero ¿cuál es aquí la regla de promoción?

Supongo que debería serconvert to int if lesser rank than int, pero no puedo encontrarlo.

Pido esto, ya que un compilador (Renesas nc30wa) no promueve a int, por lo que el resultado es siempre 0 para mi muestra.

En esta plataforma, un char es de 8 bits de ancho y 16 bits int.

Respuestas a la pregunta(2)

Su respuesta a la pregunta