fix f64 tcc eq crash
parent
ae3ec380f8
commit
91690a1b54
|
@ -28,18 +28,26 @@ pub fn ptr_str(ptr voidptr) string {
|
|||
// compare floats using C epsilon
|
||||
// ==
|
||||
pub fn (a f64) eq(b f64) bool {
|
||||
$if tinyc {
|
||||
return a -b <= 0.01
|
||||
$if windows {
|
||||
$if tinyc {
|
||||
return a -b <= 0.01
|
||||
} $else {
|
||||
return C.fabs(a - b) <= C.DBL_EPSILON
|
||||
}
|
||||
} $else {
|
||||
return C.fabs(a - b) <= C.DBL_EPSILON
|
||||
return C.fabs(a - b) <= C.DBL_EPSILON
|
||||
}
|
||||
}
|
||||
pub fn (a f32) eq(b f32) bool {
|
||||
$if tinyc {
|
||||
return a -b <= 0.01
|
||||
$if windows {
|
||||
$if tinyc {
|
||||
return a -b <= 0.01
|
||||
} $else {
|
||||
return C.fabs(a - b) <= C.DBL_EPSILON
|
||||
}
|
||||
} $else {
|
||||
return C.fabsf(a - b) <= C.FLT_EPSILON
|
||||
}
|
||||
return C.fabs(a - b) <= C.DBL_EPSILON
|
||||
}
|
||||
}
|
||||
pub fn (a f64) eqbit(b f64) bool {
|
||||
return C.DEFAULT_EQUAL(a, b)
|
||||
|
|
Loading…
Reference in New Issue