I have a C++11 project, and I added some
#define __STDC_WANT_LIB_EXT1__ 1
strcpy_s and friends are not a part of C++ just yet. It seems that C++17 will have them, but as of now providing them is up to the implementations. It seems glibc doesn't.
In fact, according to the cppreference,
__STDC_WANT_LIB_EXT1__ will only work if
__STDC_LIB_EXT1__ is defined. On my Arch Linux it isn't.
#ifdef __STDC_LIB_EXT1__ constexpr bool can_have_strcpy_s = true; #else constexpr bool can_have_strcpy_s = false; #endif
Why don't you use