c: MISRA2012

Jan Waclawek konfera na efton.sk
Pátek Březen 26 17:43:28 CET 2021


>Ještě jednou se zeptám - zaručuje norma pro jazyk C, že konstantní výraz 
>typu (20.1 / 1.1) bude _opravdu_ vyhodnocen už při překladu ?

Nie. Ved som to uz pisal - vyhodnotenie vyrazu pri preklade je zarucene len
vtedy, ak to potrebuje sam prekladac napr. ak sa ten vyraz pouzije na
urcenie pocu prvkov pola pri deklaracii/definicii toho pola.

>Pokud ne, pak není divu, že MISRA nadává. Hloupý překladač z let dávno 
>minulých to bude opravdu počítat v runtime, protože (hloupý) parser mu 
>to tak předhodí. A MISRA neumí věštit z křišťálové koule jaký překladač 
>a s jakou optimalizací bude použit.

MISRA nenadava kvoli optimalizacii ci jej nedostatku, ale kvoli tomu, ze v
typecaste sa moze nechtiac stratit umysel autora, pripadne sa moze pri
upravach omylom dospiet k stavu, ktory povodny autor nezamyslal.

wek



Další informace o konferenci Hw-list