[openssl-dev] [openssl.org #4473] Compile errors when compiling with C++ compiler

noloader@gmail.com via RT rt at openssl.org
Thu Mar 24 05:08:29 UTC 2016


On Thu, Mar 24, 2016 at 12:52 AM, Viktor Dukhovni
<openssl-users at dukhovni.org> wrote:
>
>> On Mar 24, 2016, at 12:38 AM, noloader at gmail.com via RT <rt at openssl.org> wrote:
>>
>> I can understand lack of resources.
>>
>> Lack of interest can be dealt with in the engineering process. Place a
>> quality gate, and make the code pass through it. I'd wager folks will
>> take interest if/when it blocks a release.
>
> Lack of relevance.  C++ is NOT C.  There many subtle and not so subtle
> differences.  OpenSSL is written in C.  Use a C compiler.

'make -k' is telling me its a little more than (ir)relevance. I see
some stuff going on that's not allowed in C++, but its dodgy in C. For
example:

crypto/asn1/asn_mime.c: In function ‘ASN1_VALUE* SMIME_read_ASN1(BIO*,
BIO**, const ASN1_ITEM*)’:
crypto/asn1/asn_mime.c:432:53: warning: deprecated conversion from
string constant to ‘char*’ [-Wwrite-strings]
     if ((hdr = mime_hdr_find(headers, "content-type")) == NULL
                                                     ^
crypto/asn1/asn_mime.c:443:46: warning: deprecated conversion from
string constant to ‘char*’ [-Wwrite-strings]
         prm = mime_param_find(hdr, "boundary");
                                              ^
crypto/asn1/asn_mime.c:468:57: warning: deprecated conversion from
string constant to ‘char*’ [-Wwrite-strings]
         if ((hdr = mime_hdr_find(headers, "content-type")) == NULL

In the absence of a compensating control to catch these kinds of
mistakes, maybe the project should consider a modern C++ compiler as a
quality gate.

Jeff


-- 
Ticket here: http://rt.openssl.org/Ticket/Display.html?id=4473
Please log in as guest with password guest if prompted



More information about the openssl-dev mailing list