-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?