mirror of
https://github.com/boostorg/core.git
synced 2025-05-11 21:23:54 +00:00
Fix for sprintf deprecation warning
This commit is contained in:
parent
ad20fadde7
commit
3eaba7afc0
@ -202,6 +202,14 @@ inline unsigned long test_output_impl( char32_t const& v ) { return v; }
|
|||||||
#pragma warning(disable: 4996)
|
#pragma warning(disable: 4996)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// Use snprintf if available as some complilers (clang 14.0) issue deprecation warnings for sprintf
|
||||||
|
#if ( defined(_MSC_VER) && _MSC_VER < 1900 ) || ( defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) ) || \
|
||||||
|
( defined(__cplusplus) && __cplusplus < 201103L)
|
||||||
|
# define BOOST_CORE_SNPRINTF(buffer, format, arg) std::sprintf(buffer, format, arg)
|
||||||
|
#else
|
||||||
|
# define BOOST_CORE_SNPRINTF(buffer, format, arg) std::snprintf(buffer, sizeof(buffer)/sizeof(buffer[0]), format, arg)
|
||||||
|
#endif
|
||||||
|
|
||||||
inline std::string test_output_impl( char const& v )
|
inline std::string test_output_impl( char const& v )
|
||||||
{
|
{
|
||||||
if( std::isprint( static_cast<unsigned char>( v ) ) )
|
if( std::isprint( static_cast<unsigned char>( v ) ) )
|
||||||
@ -211,7 +219,7 @@ inline std::string test_output_impl( char const& v )
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
char buffer[ 8 ];
|
char buffer[ 8 ];
|
||||||
std::sprintf( buffer, "\\x%02X", static_cast<unsigned char>( v ) );
|
BOOST_CORE_SNPRINTF( buffer, "\\x%02X", static_cast<unsigned char>( v ) );
|
||||||
|
|
||||||
return buffer;
|
return buffer;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user