- BT_ASSERT_PRE_DEV(
- !((struct bt_field_class_real *) field->class)->is_single_precision ||
- (double) (float) value == value,
- "Invalid value for a single-precision real number: value=%f, "
- "%![fc-]+F", value, field->class);
+
+ real_field->value = (double) value;
+ bt_field_set_single(field, true);
+}
+
+void bt_field_real_double_precision_set_value(struct bt_field *field,
+ double value)
+{
+ struct bt_field_real *real_field = (void *) field;
+
+ BT_ASSERT_PRE_DEV_NON_NULL(field, "Field");
+ BT_ASSERT_PRE_DEV_FIELD_HAS_CLASS_TYPE(field,
+ BT_FIELD_CLASS_TYPE_DOUBLE_PRECISION_REAL, "Field");
+ BT_ASSERT_PRE_DEV_FIELD_HOT(field, "Field");
+