int test_sqrt( void ) { value args[] = { value_zero, }; value v; ASSERT_EQUAL(NO_FAILURE, builtin_sqrt(args, &v, SETTING_ANGLE_DEG)); ASSERT_EQUAL(0, RESOLVED_VALUE(v)); args[0] = value_neg; ASSERT_EQUAL(FAILURE_INVALID_ARGS, builtin_sqrt(args, &v, SETTING_ANGLE_DEG)); args[0].iv = 16; ASSERT_EQUAL(NO_FAILURE, builtin_sqrt(args, &v, SETTING_ANGLE_DEG)); ASSERT_EQUAL(4, RESOLVED_VALUE(v)); return 0; }
KFR_INTRINSIC T final_rootmean(T value, size_t size) { return builtin_sqrt(value / T(size)); }