You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Original bug ID: 277 Reporter: administrator Status: closed Resolution: not a bug Priority: normal Severity: minor Category: ~DO NOT USE (was: OCaml general)
Bug description
Je rencontre un pb avec la fonction float_of_string : elle
ne semble pas utiliser le même séparateur entre la partie
entière et la partie décimale, selon que l'on utilise ou
non lablgtk.
Oui, comme l'a dit Jacques, c'est un problème inattendu avec la
"localisation" de la bibliothèque C: GTK appelle setlocale(), ce qui
avec les variables de ton environnement (qui doit être "francisé")
change les règles de parsing des flottants utilisées par atof() !
Je ne vois pas de solution simple sauf à réécrire une version d'atof()
spécialisée pour Caml, mais c'est un gros boulot... Dans la libc de
Linux, il y a bien une variante de atof à laquelle on peut dire
d'ignorer le "locale" courant, mais c'est hautement non portable!
Je trouve quand même que GTK est un peu limite sur ce coup-là:
setlocale() ne devrait être appelé que par le programme principal, et
non par une bibliothèque. Aussi, l'interface de "localisation" de la
libc est mal fichue, mais c'est standard :-(
Xavier Leroy
The text was updated successfully, but these errors were encountered:
Original bug ID: 277
Reporter: administrator
Status: closed
Resolution: not a bug
Priority: normal
Severity: minor
Category: ~DO NOT USE (was: OCaml general)
Bug description
Oui, comme l'a dit Jacques, c'est un problème inattendu avec la
"localisation" de la bibliothèque C: GTK appelle setlocale(), ce qui
avec les variables de ton environnement (qui doit être "francisé")
change les règles de parsing des flottants utilisées par atof() !
Je ne vois pas de solution simple sauf à réécrire une version d'atof()
spécialisée pour Caml, mais c'est un gros boulot... Dans la libc de
Linux, il y a bien une variante de atof à laquelle on peut dire
d'ignorer le "locale" courant, mais c'est hautement non portable!
Je trouve quand même que GTK est un peu limite sur ce coup-là:
setlocale() ne devrait être appelé que par le programme principal, et
non par une bibliothèque. Aussi, l'interface de "localisation" de la
libc est mal fichue, mais c'est standard :-(
The text was updated successfully, but these errors were encountered: