Re: bug#22357: grep -f not only huge memory usage, but also huge time cost

2016-12-17 Thread Norihiro Tanaka
On Wed, 14 Dec 2016 17:19:27 -0800 Paul Eggert wrote: > I was referring to code with his proposed patch installed. 'delete' is > O(N); 'replace' calls 'delete' in a loop and is therefore O(N**2). > 'epsclosure' calls 'replace' in a loop and so I suppose it is O(N**3). > I haven't looked into how

Re: C++ aliases in

2016-12-17 Thread Bruno Haible
Pedro Alves wrote: > m4/inet_pton.m4 has this: > > if test $ac_cv_have_decl_inet_pton = yes; then > dnl It needs to be overridden, because the stdcall calling convention > dnl is not compliant with POSIX. > REPLACE_INET_PTON=1 > INET_PTON_LIB="-lws2_32" > else >

Re: C++ aliases in

2016-12-17 Thread Bruno Haible
Gisle Vanem wrote: > > Can't see how that can run fine? The compiler will set up the call > > assuming cdecl convention, while the called function has stdcall > > convention. > > I would expect the 'reinterpret_cast(::getaddrinfo)' to fix that. But this will cause undefined behaviour. reinterpre

fix link errors from modules getlogin, getlogin_r

2016-12-17 Thread Bruno Haible
With MSVC, the implementation of the 'getlogin' and 'getlogin_r' functions produces a link error: /home/bruno/msvc/compile cl -nologo -DHAVE_CONFIG_H -DEXEEXT=\".exe\" -I. -I../../gltests -I.. -DGNULIB_STRICT_CHECKING=1 -DIN_GNULIB_TESTS=1 -I. -I../../gltests -I.. -I../../gltests/.. -I../gllib

Re: getprogname and libtool

2016-12-17 Thread Bruno Haible
Followup to this discussion from October 2016: Jim: > > I did not mean to imply by that message that we should eliminate every > > use of the program_name module. My desire is more to avoid accidental > > use of it when the getprogname module would be more appropriate. Bruno: > Fully agree on thi

math functions errors on 32-bit MSVC

2016-12-17 Thread Bruno Haible
Compiling a gnulib testdir with 32-bit MSVC 14, I get these errors: C:\cygwin64\home\bruno\testdir-posix\gllib\acosf.c(24): error C2084: function 'float acosf(float)' already has a body C:\cygwin64\home\bruno\testdir-posix\gllib\asinf.c(24): error C2084: function 'float asinf(float)' already has

snprintf functions errors on MSVC

2016-12-17 Thread Bruno Haible
Compiling a gnulib testdir with MSVC 14, I get these errors: C:\cygwin64\home\bruno\testdir-posix\gllib\snprintf.c(38): error C2084: function 'int snprintf(char *const ,const std::size_t,const char *const ,...)' already has a body C:\cygwin64\home\bruno\testdir-posix\gllib\vsnprintf.c(40): error

redefinition errors on MSVC

2016-12-17 Thread Bruno Haible
Compiling a gnulib testdir with MSVC 14, I get these errors: /home/bruno/msvc/compile cl -nologo -DHAVE_CONFIG_H -DEXEEXT=\".exe\" -I. -I../../gltests -I.. -DGNULIB_STRICT_CHECKING=1 -DIN_GNULIB_TESTS=1 -I. -I../../gltests -I.. -I../../gltests/.. -I../gllib -I../../gltests/../gllib -D_WIN32_WI

stdint on MSVC

2016-12-17 Thread Bruno Haible
In an MSVC 14 build, test-stdint fails to compile: test-stdint.c(312): error C2034: '_gl_verify_error_if_negative': type of bit field too small for number of bits The reason is that gnulib's (or it could also be is still in effect. This fixes it. 2016-12-17 Bruno Haible stdint: Fi

Re: gnulib: __builtin_expect()

2016-12-17 Thread Daniel Richard G.
On Fri, 2016 Dec 16 18:24-0800, Paul Eggert wrote: > > Thanks. We should address this underyling problem. I installed the > attached to try to work around the problem. I don't want to have to > modify lots of programs to include seemingly-irrelevant headers like > stdint.h. Good call, and I'm happ

autoconf warnings from module hypotl

2016-12-17 Thread Bruno Haible
$ ./gnulib-tool --create-testdir --with-tests --single-configure hypotl ... configure.ac:278: warning: AC_REQUIRE: `gl_FUNC_FREXPL' was expanded before it was required configure.ac:278: http://www.gnu.org/software/autoconf/manual/autoconf.html#Expanded-Before-Required glm4/sqrtl.m4:7: gl_FUNC_SQR

Re: getlogin on mingw

2016-12-17 Thread Pádraig Brady
On 17/12/16 11:08, Bruno Haible wrote: > I'm seeing this compilation failure on a recent mingw: looks good to me. thanks

Re: [master b3cf281] Unbreak the MinGW build

2016-12-17 Thread Bruno Haible
Eli Zaretskii wrote: > You can now remove the workaround from stdio-impl.h. Done. Thanks for the rapid debugging. This is the kind of bug that you typically cannot reproduce any more after two weeks, if you don't handle it quickly. Bruno

Re: [master b3cf281] Unbreak the MinGW build

2016-12-17 Thread Eli Zaretskii
> Date: Sat, 17 Dec 2016 09:51:15 +0200 > From: Eli Zaretskii > Cc: bug-gnulib@gnu.org, emacs-de...@gnu.org > > I will try to look into this some more today, and see if I can unlock > the mystery. It bothers me, too. Bug squashed, see commit 0757b4f. It was always there, we were just lucky unt

getlogin_r on mingw

2016-12-17 Thread Bruno Haible
I'm seeing this compilation failure on a recent mingw: ../../gltests/test-getlogin_r.c:31:17: fatal error: pwd.h: No such file or directory compilation terminated. make[4]: *** [Makefile:7987: test-getlogin_r.o] Error 1 This fixes it: 2016-12-17 Bruno Haible getlogin_r tests: Port

getlogin on mingw

2016-12-17 Thread Bruno Haible
I'm seeing this compilation failure on a recent mingw: In file included from ../../gltests/test-getlogin.c:23:0: ../../gltests/test-getlogin.c:24:18: error: ‘getlogin’ undeclared here (not in a function) SIGNATURE_CHECK (getlogin, char *, (void)); ^ ../../gltests/signature.h:46

Re: C++ aliases in

2016-12-17 Thread Gisle Vanem
Pedro Alves wrote: > Can't see how that can run fine? The compiler will set up the call > assuming cdecl convention, while the called function has stdcall > convention. I would expect the 'reinterpret_cast(::getaddrinfo)' to fix that. With this little example: #include #include int main