tech-userlevel archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Adding %m conversion to the printf(3) family
In article <20151023230052.GB12646%britannica.bec.de@localhost>,
Joerg Sonnenberger <joerg%britannica.bec.de@localhost> wrote:
>On Fri, Oct 23, 2015 at 10:33:52PM +0100, Roy Marples wrote:
>> Instead of trying to make gcc work better, I propose that our libc printf(3)
>> family of functions instead support %m.
>
>This has been discussed before and I don't believe you have given any
>new convincing arguments.
>
>> this proposal, I expect you to supply a working solution to the problem noted
>> at the top of this email. A valid solution could be reverting the gcc change
>> and keeping the status quo.
>
>It would help if you give a test case of what problem you are actually
>talking about. I still have no clue what you reall mean.
>
>Joerg
>
#include <stdio.h>
#include <stdarg.h>
static void __attribute__((__format__(__syslog__, 2, 3)))
logmein(int fd, const char *fmt, ...)
{
va_list ap;
va_start(ap, fmt);
vdprintf(fd, fmt, ap);
va_end(ap);
}
int
main(void) {
logmein(1, "%s %m\n", "foo");
return 0;
}
$ gcc -Wformat=2 -Wmissing-format-attribute logfmt.c
logfmt.c: In function 'logmein':
logfmt.c:9:2: warning: function might be possible candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
vdprintf(fd, fmt, ap);
^
christos
Home |
Main Index |
Thread Index |
Old Index