OT: c: mismatched comparison
Miroslav Draxal
evik na volny.cz
Pondělí Červenec 29 13:23:24 CEST 2024
Dobrý den ve spolek.
Už delší dobu si lámu hlavu nad tím, co se nelíbí překladači. Je to tedy
vyseparované z daleko složitější podmínky, ale tohle ten problém způsobuje.
Microchip
XC8 ver.2.46
uint8_t RucneCisloSekce;
uint8_t CisloSekce;
if (RucneCisloSekce == (CisloSekce - 1u)) {
NOP();
}
Hlásí warning: (764) mismatched comparison
Což je
(764) mismatched comparison (Code Generator)
A comparison is being made between a variable or expression and a constant
value which is not in
the range of possible values for that expression, for example:
unsigned char c;
if(c > 300) /* oops -- how can this be true? */
close();
pokud odstraním -1, potom OK.
Ano, může to přetéct z 0x00 do 0xff, ale to není "mismatched comparison"
???
Díky za vysvětlení, Míra
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20240729/7f74c298/attachment.htm>
Další informace o konferenci Hw-list