On Tuesday 18 November 2025 12:17:06 Pali Rohár wrote:
> On Tuesday 18 November 2025 10:18:33 LIU Hao wrote:
> > 在 2025-11-17 23:16, Martin Storsjö 写道:
> > > I had a few comments on commit message and comment wordings here.
> > > 
> > > Other than that, this looks reasonable to me. I think this is the most 
> > > consistent way forward.
> > > 
> > > However in practice, there's a moderately high chance that this will
> > > break existing code (for all the code that is built with
> > > __USE_MINGW_ANSI_STDIO=1, which is the default for most configurations
> > > with msvcrt.dll, and with UCRT you'll also get this if you e.g. include
> > > libstdc++ headers). Like, I'm quite sure that this will break some
> > > user's code.
> > > 
> > > But on the other hand, our current state is inconsistent, so this does 
> > > make things better.
> > > 
> > > What do Liu Hao and Jacek think about it?
> > 
> > As stated in a message last month, I think we had better not touch the %S
> > part. At the moment it conforms to C99, so there's no sufficient reason to
> > make a change.
> 
> C99 does not specify %S format, here it is MS extension.
> 
> And in any case, is there any reason why not to support h and l
> modifiers for %S format (%hS and %lS)? I was somehow expecting that
> mingw-w64 printf implementation would support all possible modifiers
> supported by msvcrt, UCRT, C99 and GNU.
> 
> > I'm interested by the %Z change. However, <ntdef.h> is a kernel header and
> > may cause conflicts with other SDK headers; maybe <winternl.h> should be
> > included instead.
> 
> I looked at the https://learn.microsoft.com/en-us/windows/win32/api/ntdef/
> and seems that it is really kernel header. I thought that ntdef.h is
> normal header as it is not in the mingw-w64-headers/ddk/include/ddk/
> like others kernel header files.

I replaced the #include <ntdef.h> by #include <winternl.h> in
mingw-w64-crt/stdio/mingw_pformat.c and it compiled in the same way.
So it is OK to use winternl.h.

> Should not be all kernel headers in mingw-w64-headers/ddk/include/ddk/
> directory?


_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to