> Le 22 mars 2018 à 20:09, Richard Hipp <d...@sqlite.org> a écrit :
> 
> ...
> Please download the latest Pre-release Snapshot
> (https://sqlite.org/download.html) and test out the latest SQLite in
> your applications.  Report any issues, either to this mailing list, or
> directly to me at d...@sqlite.org.

I am of course not really much concerned by this detail — yet I'm writing an 
email about it :).  Since 3.22 and now with 3.23 snapshot as of today, latest 
updates of Visual Studio 2017 report this warning:

"shell.c(2377): warning C4996: 'chmod': The POSIX name for this item is 
deprecated. Instead, use the ISO C and C++ conformant name: _chmod."

It occurs at two places in shell.c, and the same thing occurs once for unlink 
(_unlink).

In their latest versions of the documentation about their UCRT they say:

> The C++ standard reserves names that begin with an underscore in the global 
> namespace to the implementation. Because the POSIX functions are in the 
> global namespace, but are not part of the standard C runtime library, the 
> Microsoft-specific implementations of these functions have a leading 
> underscore. For portability, the UCRT also supports the default names, but 
> the Visual C++ compiler issues a deprecation warning when code that uses them 
> is compiled. Only the default POSIX names are deprecated, not the functions. 
> To suppress the warning, define _CRT_NONSTDC_NO_WARNINGS before including any 
> headers in code that uses the original POSIX names.

See: https://docs.microsoft.com/en-us/cpp/c-runtime-library/compatibility

Adding a #define _CRT_NONSTDC_NO_WARNINGS to shell.c might indeed be a nice way 
to go.

-- 
Best Regards, Meilleures salutations, Met vriendelijke groeten,
Olivier Mascia


_______________________________________________
sqlite-users mailing list
sqlite-users@mailinglists.sqlite.org
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to