New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Configure option 'no-deprecated' means '-DOPENSSL_API_COMPAT=0x10100000L' #6470
Conversation
…00L' (that is, until 1.2.0 comes along) Since we allow future deprecation (and that shouldn't be affected by 'no-deprecated'), we need to distinguish what to have deprecated on the value of OPENSSL_API_COMPAT, not the existence of OPENSSL_NO_DEPRECATED. Note that the macro OPENSSL_NO_DEPRECATED still exists, in case someone still uses it.
There's no need to backport this to 1.1.0, since future deprecation didn't exist there. |
... to the check OPENSSL_API_COMPAT < 0x10100000L, to correspond with how it's declared.
957e42b
to
daab428
Compare
#if defined(OPENSSL_NO_DEPRECATED) | ||
# define DECLARE_DEPRECATED(f) | ||
#elif __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) | ||
#if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ > 0) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was report that this triggers -Wundef warning/error with clang-cl, i.e. clang which pretends to be an msc.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah, I'm actually surprised that MSVC and DEC C never complained about this...
Anyway, I think that's an issue for another PR...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why? Referring undefined macro is specified, so it's not like it's an error. Other compilers simply concentrate on code warnings, not pre-propcessor.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just in case, it wasn't my intention to examine it thoroughly. I mean I'm not actually looking into this matter, the #if thing simply caught my eye...
#6467 is dependant on this PR - so please ping that one when you merge this. |
…00L' (that is, until 1.2.0 comes along) Since we allow future deprecation (and that shouldn't be affected by 'no-deprecated'), we need to distinguish what to have deprecated on the value of OPENSSL_API_COMPAT, not the existence of OPENSSL_NO_DEPRECATED. Note that the macro OPENSSL_NO_DEPRECATED still exists, in case someone still uses it. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from #6470)
... to the check OPENSSL_API_COMPAT < 0x10100000L, to correspond with how it's declared. Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from #6470)
(that is, until 1.2.0 comes along)
Since we allow future deprecation (and that shouldn't be affected
by 'no-deprecated'), we need to distinguish what to have deprecated
on the value of OPENSSL_API_COMPAT, not the existence of
OPENSSL_NO_DEPRECATED.
Note that the macro OPENSSL_NO_DEPRECATED still exists, in case
someone still uses it.