Re: Build failed in Hudson: 3.HEAD-i386-opensolaris-SunStudioCc #502

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Sat, 04 Dec 2010 15:34:17 +1300

On 04/12/10 14:08, Amos Jeffries wrote:
> On 04/12/10 06:11, Tsantilas Christos wrote:
>> Hi all,
>> The problem now is mixing extern "C" functions with c++.
>>
>> On 12/03/2010 08:35 AM, noc_at_squid-cache.org wrote:
>>> libtool: compile: ccache /opt/SunStudioExpress/prod/bin/CC
>>> -DHAVE_CONFIG_H -I../../.. -I../../../include -I../../../lib
>>> -I../../../src -I../../include -I/usr/local/include
>>> -I/usr/include/gssapi -I/usr/include/kerberosv5 -I../../../libltdl
>>> -I/usr/include/libxml2 -I/usr/include/gssapi -I/usr/include/kerberosv5
>>> -I/usr/include/libxml2
>>> -errwarn=%all,no%badargtype2w,no%wbadinit,no%wbadasg -errtags
>>> -D_REENTRANT -D_FILE_OFFSET_BITS=64 -g -c
>>> ../../../src/base/AsyncCall.cc -KPIC -DPIC -o .libs/AsyncCall.o
>>> "../../../src/ssl/gadgets.h", line 38: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type void(*)(x509_st*).
>>> "../../../src/ssl/gadgets.h", line 39: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type
>>> void(*)(evp_pkey_st*).
>>> "../../../src/ssl/gadgets.h", line 40: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type
>>> void(*)(bignum_st*).
>>> "../../../src/ssl/gadgets.h", line 42: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type
>>> void(*)(asn1_string_st*).
>>> "../../../src/ssl/gadgets.h", line 43: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type
>>> void(*)(txt_db_st*).
>>> "../../../src/ssl/gadgets.h", line 44: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type
>>> void(*)(X509_name_st*).
>>> "../../../src/ssl/gadgets.h", line 45: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type void(*)(rsa_st*).
>>> "../../../src/ssl/gadgets.h", line 46: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type
>>> void(*)(X509_req_st*).
>>> "../../../src/ssl/gadgets.h", line 47: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type
>>> void(*)(ssl_ctx_st*).
>>> "../../../src/ssl/gadgets.h", line 48: Error, temargnoval: Template
>>> parameter DeAllocator requires an expression of type void(*)(ssl_st*).
>>> 10 Error(s) detected.
>>
>> The only way I found to solve the above is to define C++ wrappers
>> functions for X509_free, EVP_PKEY_free, BIG_NUM_free etc (~ 10 wrapper
>> functions)
>>
>> Any opinion?
>

Sorry I didn't read that right for my earlier reply.

If the only way is to define template wrappers then so be it.

Where possible can they be defined in compat/os/Solaris.h. If they need
special names shared across all OS then a compat/ssl.h may be needed.

Amos

-- 
Please be using
   Current Stable Squid 2.7.STABLE9 or 3.1.9
   Beta testers wanted for 3.2.0.3
Received on Sat Dec 04 2010 - 02:34:25 MST

This archive was generated by hypermail 2.2.0 : Sat Dec 04 2010 - 12:00:03 MST