-32768 não cabe em um valor assinado de 16 bits

Estou usando o PCLint v 9.00h

No meu código, tenho o seguinte (onde S16 é um 16 bits assinado):

S16 temperatureResult = -32768;

Que, a menos que meu cérebro pare de funcionar, é o menor valor que pode caber nesse tipo

Mas estou recebendo um erro de cotão de "Viola a regra exigida 10 de MISRA 2004, conversão implícita de número inteiro em tipo menor"

Se eu alterar o valor para -32767, ele funcionará bem.

Estou perdendo algo óbvio?

questionAnswers(4)

yourAnswerToTheQuestion