( therion | 2025. 03. 07., p – 12:56 )

Igazából én nem fogalmaztam jól. Az optimalizációt az teszi lehetővé, hogy az UB-hoz nem vezető ágakon a kód a jó eredményt adja, ez tiszta sor. Ami nekem a problémám, hogy ha ezt mindenfajta határ nélkül továbbvisszük akkor teljesen külön statikusan linkelt modulokban (amik adott esetben jól vannak megírva) is rögtön UB lesz.

Egy példa: ez index check kivehető mert a rossz index automatikusan UB-hoz vezet. Viszont ha az index checknek lett volna bármi mellékhatása? Például logolnám hogy mely felhasználók próbálkoztak invalid indexekkel. A később (akár a hívó modulban) kialakuló UB miatt a nagyon is jól definiált „ha a felhasználó próbálkozik valamivel jegyezd fel” viselkedés is UB lesz.