[Mingw-users] Deprecation of __USE_MINGW_ANSI_STDIO

Back to archive index
Keith Marshall keith****@users*****
Sun Jan 6 06:09:51 JST 2019


On 05/01/19 19:23, Eli Zaretskii wrote:
>> This deprecation warning is going to be a terrible nuisance, for the
>> following reasons:
>
> There's a similar problem with __USE_MINGW_FSEEK.  The warning for
> that one is emitted by stdio.h, so it's a little bit easier to fix.
> But the alternative, to set _WIN32_WINDOWS to something smaller than
> 0x0500, is also somewhat problematic, since it requires conditionals
> that do it only for mingw.org's MinGW (because MinGW64 supports only
> Vista and later).

And we committed to continuing legacy support, (IIRC, you were a strong
advocate for that commitment).  But why is it a problem, anyway?
AFAICT, __USE_MINGW_FSEEK serves *no useful purpose whatsoever*, on
*any* platform which is not Win9x, so why do mingw-w64 still have it?
And why is it a problem if *both* _WIN32_WINNT and _WIN32_WINDOWS are
defined?  The former is explicitly related to support levels on WinNT
derived platforms, while the latter is exclusive to Win9x; IAC, there is
no fundamental reason why you cannot declare an intent to support Win9x
to (say) _WIN32_WINDOWS_ME, and simultaneously require
_WIN32_WINNT_WIN2K or later on WinNT; AFAIK, MinGW.org headers no longer
restrict API visibility on the basis of any _WIN32_WINDOWS definition,
(unless it's an API which is exclusive to, or differently implemented
on, Win9x).

> It would be easier if the warning about __USE_MINGW_FSEEK is also
> removed, as the entire GCC/GDB/Binutils chain uses it, for example.

I don't recall seeing any related warnings, when I built GCC-8.2.0 or
binutils-2.31; I can't comment on GDB usage, because I've never built
it.  However, __USE_MINGW_FSEEK is another feature test macro which
really shouldn't be visible outside of MinGW.org source code, and the
case for not deprecating it is even weaker ... how many of those
projects which abuse it actually deliver Win9x compatible code today,
anyway?  Those that do should *really* be defining _WIN32_WINDOWS, which
implicitly enables the __USE_MINGW_FSEEK feature.

-- 
Regards,
Keith.

Public key available from keys.gnupg.net
Key fingerprint: C19E C018 1547 DE50 E1D4 8F53 C0AD 36C6 347E 5A3F

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: OpenPGP digital signature
URL: <https://lists.osdn.me/mailman/archives/mingw-users/attachments/20190105/5e1a610d/attachment-0001.sig>


More information about the MinGW-Users mailing list
Back to archive index