Subject: Re: [boost] [Serialization] BOOST_CLASS_EXPORT regression on SunCC
From: Sohail Somani (sohail_at_[hidden])
Date: 2009-02-17 10:27:14
David Abrahams wrote:
> on Tue Feb 17 2009, Sohail Somani <sohail-AT-taggedtype.net> wrote:
>> Hey Robert,
>> I guess that is possible. I have no idea *why* it is not getting
>> instantiated though so I wouldn't know where to start. Any suggestions?
>> In any case, what part of the standard says that the return type should
>> be instantiated? I read the part referenced in register_archive.hpp
>> (temp.dep.candidate) but I can't see how to interpret that as "must
>> instantiate the return type."
> My implementation of BOOST_CLASS_EXPORT used implementation-specific
> hacks to get instantiation to happen on different compilers. It all
> hinges on what the compiler considers to be "using" a name. So you may
> have to find the right hack for Sun. Fortunately, the code was fairly
> well localized into a single header IIRC.
Ok, that is a start. Thanks.
Still, why intentionally restrict portability even further when the
alternative was not burdensome to begin with? I would have better luck
implementing a portable export (the previous version) rather than
figuring out hacks for each compiler.
I think the export documentation should be modified to say (in big fat
bold letters) that it should not be used in portable code.
Actually, I remember mentioning this at my serialization talk. I might
have to follow my own advice :-)
-- Sohail Somani http://uint32t.blogspot.com
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk