Re: compilation warning in error.c

2014-11-05 Thread Werner LEMBERG
> I suggest disabling the unwanted diagnostic instead. Something like > this at the start of the file: > > #if 4 < __GNUC__ + (3 <= __GNUC_MINOR__) > # pragma GCC diagnostic ignored "-Wformat-extra-args" > #endif This is better, thanks. However, I'm not happy to globally disable the warning.

Re: compilation warning in error.c

2014-11-05 Thread Paul Eggert
On 11/05/2014 02:03 AM, Werner LEMBERG wrote: it might be a programming error Sure, but it might not be an error, and in fact in this case it is definitely not an error. I suggest disabling the unwanted diagnostic instead. Something like this at the start of the file: #if 4 < __GNUC__ + (3

Re: [PATCH 0/5] obstacks again

2014-11-05 Thread Paul Eggert
On 11/05/2014 03:21 AM, Alan Modra wrote: I think you need to keep the casts, otherwise you can only specify new extra arg alloc and free functions. Thanks for catching that; I installed the attached fix into gnulib. It is annoying that gcc -Wall complains about using malloc and free here, but

Re: [PATCH 0/5] obstacks again

2014-11-05 Thread Alan Modra
On Tue, Nov 04, 2014 at 12:43:05AM -0800, Paul Eggert wrote: > >I've added: "Earlier versions of obstacks allowed you to use > >@code{obstack_blank} to shrink objects. This will no longer work." > > But this doesn't suffice for obstack_blank_stack, which *can* shrink objects > and where user code

Re: compilation warning in error.c

2014-11-05 Thread Werner LEMBERG
>> #if _LIBC >> - __fxprintf (NULL, file_name != NULL ? "%s:%d: " : " ", >> - file_name, line_number); >> + if (file_name != NULL) >> +__fxprintf (NULL, "%s:%d: ", file_name, line_number); >> + else >> +__fxprintf (NULL, " "); > > The new version is less efficient becaus

Re: compilation warning in error.c

2014-11-05 Thread Paul Eggert
Werner LEMBERG wrote #if _LIBC - __fxprintf (NULL, file_name != NULL ? "%s:%d: " : " ", - file_name, line_number); + if (file_name != NULL) +__fxprintf (NULL, "%s:%d: ", file_name, line_number); + else +__fxprintf (NULL, " "); The new version is less efficient because