Re: [PATCHES] snprintf() argument reordering not working - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: [PATCHES] snprintf() argument reordering not working
Date
Msg-id 43944C73.9000903@dunslane.net
Whole thread Raw
In response to Re: [PATCHES] snprintf() argument reordering not working  ("Andrew Dunstan" <andrew@dunslane.net>)
Responses Re: [PATCHES] snprintf() argument reordering not working
List pgsql-hackers
I wrote:

>Bruce Momjian said:
>  
>
>>OK, a few things.  First, Tom has fixed snprintf.c so it should
>>properly process positional parameters now.  Would you first test the
>>libintl version of *printf to see if it can process %$ parameters
>>(probably by hacking up any language file and testing the printing),
>>and then try your patch below to see if it is properly reorders the
>>arguments.  If libintl does not reorder properly, but our snprintf.c
>>does, would you please generate an appliable patch we can put into
>>8.1.X?  Thanks.
>>
>>I know I am asking a lot, but you are "the man" on this one.  :-)
>>
>>    
>>
>
>Since the effect of the configure change I am proposing to reverse was to
>force use of the *printf in libintl, don't we already know the answer to
>your first question from Nicolai's report?
>
>
>  
>

However, a very simple test shows that the libintl printf does indeed do 
%m$ processing:


$ cat testpf.c
#include <libintl.h>
main()
{       printf("%2$s %1$s\n","arg1","arg2");
}
$ gcc -o testpf testpf.c -lintl
$ ./testpf.exe
arg2 arg1
$

So the next question is why isn't it working in the build.

cheers

andrew





pgsql-hackers by date:

Previous
From: Hannu Krosing
Date:
Subject: Concurrent CREATE INDEX, try 2 (was Re: Reducing relation locking overhead)
Next
From: Tom Lane
Date:
Subject: Re: [PATCHES] snprintf() argument reordering not working