Mientras probaba PR recientes en FreeBSD 12 y Dragonfly BSD, noté que la prueba de matemáticas estaba fallando:
Testing file math.in ... fail
Output differs for file math.in. Diff follows:
--- math.tmp.out 2017-01-08 17:03:08.345651000 +0000
+++ math.out 2017-01-08 16:43:30.925313000 +0000
@@ -6,4 +6,4 @@
4
2
.499999
-12332423423534534634589723498734892739848732894729147128947918247129\ 42
+1233242342353453463458972349873489273984873289472914712894791824712942
El resultado que he observado más esta discusión, http://stackoverflow.com/questions/31732348/how-to-disable-line-breaks-in-bc , muestra que en BSD bc
no reconoce el BC_LINE_LENGTH
env var (también verificado usando strings /usr/bin/bc
) y usa una longitud predeterminada de 70. ¿Queremos
1) ¿Restablecer la unión multilínea?
2) Documente el límite de 69 dígitos (más nueva línea equivale a 70 caracteres por línea).
De acuerdo, veo que no tenemos que limitarnos a las dos opciones que enumeré anteriormente. Podemos optimizar para el caso habitual y aún admitir números realmente largos. PR estará listo para su revisión en un par de minutos (esperando a que termine la prueba de FreeBSD).
Por cierto, el comando string
es realmente asombroso ya que hace que lidiar con esto, como con tantos problemas relacionados, sea mucho, mucho más barato y simple de lo que sería de otra manera. Gracias, @msteed y compañía por implementarlo.
Comentario más útil
Por cierto, el comando
string
es realmente asombroso ya que hace que lidiar con esto, como con tantos problemas relacionados, sea mucho, mucho más barato y simple de lo que sería de otra manera. Gracias, @msteed y compañía por implementarlo.