Hi David,

Thanks for the extensive review of the patch, as well as the commits. I will
re-build against the latest tree and see what comes out.

Before I do that, I have a quick question:

2009/10/15 David Brownell <[email protected]>

>  - "%lld" being correct when the parameter is a "long long",
>   as it *IS* here, but for some reason this patch changed
>   those to require uint64_t and PRIi64.
>

The issue with MinGW right now is that it does not (want to) support the
"ll" length modifier (which might be a GCC on Windows enforcement issue,
some background of which is highlighted in this thread:
http://article.gmane.org/gmane.comp.gnu.mingw.announce/1363).

Now, I do realize now that I inadvertently used PRI*i*64 instead of PRI*d*64
in my patch for %lld replacement (which is plain wrong). Is that why the
%lld -> PRI#64 modifications were rejected?

If so, I'll make sure resubmit with PRId64.

If not, my understanding (from
http://en.wikipedia.org/wiki/Printf#printf_format_placeholders) that ISO C99
mandates the use of PRI#64 as a replacement for %ll# in printf statements.
Therefore I would believe that 'printf("value: %lld\n", val)' is completely
equivalent to 'printf("value: " PRId64 "\n", val)', and should not break
anything on any platform - on the contrary, it should make the code even
more portable.
Or am I misunderstanding something about the use of the PRI#64 modifiers?


As to "%zu" and "%jd", those modifiers were also rejected by MinGW-W64
("unknown conversion type character in format"), eventhough they're ISO C99.

>From looking around, I think there's probably a way to get MinGW to accept
them, which would alleviate the need for a patch.

I'll get back to the list when I have tried building against the latest
tree.

Regards,

>NIL:
_______________________________________________
Openocd-development mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to