Re: /bzr/squid3/trunk/ r10095: Fixed linking convention mismatch in Asn ACL

From: Kinkie <gkinkie_at_gmail.com>
Date: Tue, 10 Nov 2009 16:46:37 +0100

On Sat, Nov 7, 2009 at 2:28 AM, Amos Jeffries <squid3_at_treenet.co.nz> wrote:
> Francesco Chemolli wrote:
>>
>> ------------------------------------------------------------
>> revno: 10095
>> committer: Francesco Chemolli <kinkie_at_squid-cache.org>
>> branch nick: trunk
>> timestamp: Fri 2009-11-06 17:12:48 +0100
>> message:
>>  Fixed linking convention mismatch in Asn ACL
>> modified:
>>  src/acl/Asn.cc
>>
>
> This is what SQUIDCEXTERN is for.
> ... working towards not needing it as all code converges on C++ builds.

I can confirm that SQUIDCEXTERN is not working here: the referred-to
function are static, and they need C linkage as they are defined in a
.cc file, but passed as pointers to the radix tree c library.

Solutions I can see are:
- leaving the extern "C" definition block as is (possbly remove the
#ifdefs, as that file will always be compiled with c++)
- un-static-ify the functions and let them pollute the namespace
- convert the radix-tree library to c++ so no more C linkage will be needed.

Opinions?

Thanks

-- 
    /kinkie
Received on Tue Nov 10 2009 - 15:46:46 MST

This archive was generated by hypermail 2.2.0 : Wed Nov 11 2009 - 12:00:05 MST