Для некоторых плавающих стандартных программ библиотеки стандарта 2D аргумента верификация может проигнорировать аргументы функции и принять, что функция возвращает все возможные значения в своей области значений.
В этом коде, первом assert
оператор верен и второй assert
оператор является ложным. Однако, потому что верификация принимает тот fmodf
и nextafterf
возвратите полнофункциональные значения, это полагает что assert
операторы являются ложными, но только на части возможных путей к выполнению. Поэтому User assertion
проверяет assert
операторы являются оранжевыми.
#include <math.h> int main() { float val1=10.0, val2=3.0,res; res = fmodf(val1/val2); assert(res==1.0); res = nextafterf(val2,val1); assert(res<3.0); }