We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
In the newlib's sys/features.h, the "__SSP_FORTIFY_LEVEL" will not be defined when the
source is cpluspluse.
#if _FORTIFY_SOURCE > 0 && !defined(__cplusplus) && !defined(__lint__) && \ (__OPTIMIZE__ > 0 || defined(__clang__)) && __GNUC_PREREQ__(4, 1) # if _FORTIFY_SOURCE > 1 # define __SSP_FORTIFY_LEVEL 2 # else # define __SSP_FORTIFY_LEVEL 1 # endif #else # define __SSP_FORTIFY_LEVEL 0 #endif
(sys/features.h)
I don't know this is a bug or a feature, but If I remove the '__cplusplus' restrict, is there
any possible problem?
Because this feature will catch some real bugs in my code, such as strcpy, memcpy...