github / github/codeql-cli-binaries

float.toString() result is lossy

Abierto
#58 6 comentarios 0 reacciones 0 asignados Ver en GitHub
Complexity: Medium Engine: Evaluator
Lenguaje dominante
Sin datos de lenguaje
Estrellas
1k
Forks
184
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

It appears the built-in predicate `float.toString()` causes precision loss for the result. This can be irritating and also prevents using it in QL `InlineExpectationsTest` because there the expected `value` has to be a `string`.

CodeQL's `float` uses 64-bit and is therefore able to represent for example 1.555555555; yet `1.555555555.toString()` has 1.555556 as result.
These are not the same values, `1.555555555 = 1.555556` does not hold.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Empieza por localizar la implementación del predicado integrado float.toString() y el CodeQL QL InlineExpectationsTest mencionado en el issue. Reproduce el ejemplo 1.555555555 e inspecciona el manejo existente de las cadenas esperadas; se considera terminado cuando la cadena conserva la precisión del float y la expectativa correspondiente pasa.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Área
devtools
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
35/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.