> On some buildbots I see this failure to build the datetime module:

See also bugs.python.org/1055.

> error: Invalid type for 'u' argument 3
> 
> The source line is this:
> 
>       if (!PyArg_ParseTuple(args, "uu:strptime", &string, &format))

and string and format are of type char*; for "u", they should be of
type Py_UNICODE*.

> I hink this is relevant, in pyport.h:
> 
> #ifdef HAVE_ATTRIBUTE_FORMAT_PARSETUPLE
> #define Py_FORMAT_PARSETUPLE(func,p1,p2) __attribute__((format(func,p1,p2)))
> #else
> #define Py_FORMAT_PARSETUPLE(func,p1,p2)
> #endif
> 
> But how does this work?

Also consider this:

PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...)
Py_FORMAT_PARSETUPLE(PyArg_ParseTuple, 2, 3);

Together, they expand to

int PyArg_ParseTuple(PyObject*, const char*, ...)
__attribute__((format(PyArg_ParseTuple, 2, 3)));

It's exactly one buildbot slave (I hope), the one that runs mvlgcc. I
created a patch for GCC to check ParseTuple calls for correctness, and
set up a buildbot slave to use this compiler.

Regards,
Martin

_______________________________________________
Python-3000 mailing list
Python-3000@python.org
http://mail.python.org/mailman/listinfo/python-3000
Unsubscribe: 
http://mail.python.org/mailman/options/python-3000/archive%40mail-archive.com

Reply via email to