indent-2.2.13 does not set a locale
Petr Pisar <[email protected]> Wed, 12 Apr 2023 12:21:13 +0200
| Newsgroups | gmane.comp.gnu.indent.bugs |
|---|---|
| Message-ID | <[email protected]> |
--EUtBf/v5gMbC0rDE
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
I noticed that indent-2.2.13 stopped printing localized messages:
$ strace -e file ./src/indent --version
execve("./src/indent", ["./src/indent", "--version"], 0x7ffcc7072328 /* 20 vars */) = 0
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=27589, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, "/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=2633640, ...}, AT_EMPTY_PATH) = 0
openat(AT_FDCWD, ".indent.pro", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/home/test/.indent.pro", O_RDONLY) = -1 ENOENT (No such file or directory)
newfstatat(1, "", {st_mode=S_IFCHR|0620, st_rdev=makedev(0x88, 0x2), ...}, AT_EMPTY_PATH) = 0
GNU indent 2.2.13
+++ exited with 64 +++
That's because setlocale() is not called in src/indent.c:
#if defined (HAVE_SETLOCALE)
setlocale(LC_ALL, "");
#endif
because HAVE_SETLOCALE is not defined in config.h.
It seems that configure.ac ported to autoconf-2.71
(AC_CHECK_INCLUDES_DEFAULT?) stopped checking for setlocale() and defining the
macro. Actually diffing config.h between 2.2.12 and 2.2.13, both generated
with the same autoconf, shows plenty of removed macros. So HAVE_SETLOCALE
might be not the only missing feature.
-- Petr
--EUtBf/v5gMbC0rDE
Content-Type: application/pgp-signature; name="signature.asc"
-----BEGIN PGP SIGNATURE-----
iQIzBAABCAAdFiEE4/QvzhVoMKgDWObpT9GuwzZa978FAmQ2hg8ACgkQT9GuwzZa
97/PJQ/9HW5K3MOp/AjiEGDwtlS/j2SPRS43+Suumh85I7RDqQUi1yEx41F6JXd3
HbVKVEo2sFZjZscIV15MFYyP7Cv34nHTSocxlcoSit5MlKBiexSqwcAGyLhm5uPb
5nhUOXD7QR+5zDdFqrqNFbP6YqAhus0s/8v/ODT57x9RjX+TnKonDNVT9PUn00t1
SEmy6gRM66fN9y3AGS6adTf7us3+QplRJBC3LfUe2oggdbifR98PEGa6OqvjpQz9
4zefjUVyD49XeH93S3PzHlsfmxiXC0NkPVaKNghzL4pSwQOwcX0mHXJeB3GgO4yF
UPHrjjF1CzTfRGKYJc5NIW5TwRWp0ZTdALExlmf1Q1izUQgc2Jnac8ijhg5FlIpf
Dd2rc1DSzqTBGP+sCv5/yQCRNbG5jqujveKOcUrOss1a7cjrmn7t+KIncp1hHN5j
daKKLlCRiM96q/NCc+cQx8wzzXx+wN2HP0WRlfYwu0pTUU4IyF47FU+7IRTcpT4J
B6lbWPpn4Iyv6horQUjKO5mpjif9dPVYNkMByefN8VOVcFxoGioAer2bMYu4WlAv
05tDaRAWFPmHCURYLZaeOvfsS6clLxYHVgNV4N4fLjowhz+tyGpOLSrU8rCDlheg
2rG/1xIsH4TTIHcm1+TkHMSpYnLhr2okrsNop2Ik2i/s69aS0Rk=
=bOV0
-----END PGP SIGNATURE-----
--EUtBf/v5gMbC0rDE--