Re: filemode with C++

2011-01-13 Thread Bruno Haible
Hi John, > I'd like to use the filemode module in a C++ file but found that it > does not have extern "C" magic. I started to submit a patch, but > stopped when I saw that filemode.h has > > # if HAVE_DECL_STRMODE > # include /* FreeBSD, OpenBSD */ > # include /* NetBSD */ > # else >

filemode with C++

2011-01-13 Thread John W. Eaton
Hi, I'd like to use the filemode module in a C++ file but found that it does not have extern "C" magic. I started to submit a patch, but stopped when I saw that filemode.h has # if HAVE_DECL_STRMODE # include /* FreeBSD, OpenBSD */ # include /* NetBSD */ # else void strmode (mode_t

Re: Openat without die

2011-01-13 Thread Jim Meyering
Bruno Haible wrote: >> Before embarking on changes to (or duplication of) infrastructure like >> the *at functions, please tell us about your motivation. Why do you care >> about whether openat may abort under unusual circumstances > > The reason is so that libposix can offer openat() and getcwd()

Re: locale-related printf bug when using formats with thousands grouping character

2011-01-13 Thread Jim Meyering
Bruno Haible wrote: > The bug affects not only %f but also %g, and it can lead to a SIGSEGV. > > Reproduce with the bash 3.2.1 built-in: ... > or with the printf program from coreutils 8.4: > > $ env LC_ALL=en_US.UTF-8 printf "%'.5g\\n" 999.996 > 1000 > $ env LC_ALL=en_US.UTF-8 printf "%'.4g\\n" 99

Re: locale-related printf bug when using formats with thousands grouping character

2011-01-13 Thread Jim Meyering
Bruno Haible wrote: > The bug affects not only %f but also %g, and it can lead to a SIGSEGV. > > Reproduce with the bash 3.2.1 built-in: > > $ LC_ALL=en_US.UTF-8 bash -c "printf \"%'.5gn\" 999.996" > 1000 > $ LC_ALL=en_US.UTF-8 bash -c "printf \"%'.4gn\" .996" > Segmentation fault > $ L