Boost logo

Boost :

From: JOAQUIN LOPEZ MU?Z (joaquin_at_[hidden])
Date: 2005-07-23 10:42:40


Hello Robert,

----- Mensaje original -----
De: Robert Ramey <ramey_at_[hidden]>
Fecha: Viernes, Julio 22, 2005 3:15 pm
Asunto: Re: [boost] [serialization] bug in latest
changetoboost/serialization/base_object.hpp

> Sorry, I fixed this but I see someone already beat me to it.

It was me, I finally managed to grab CVS access yesterday.

>
> I'll add a compile only test for this.
>

Thank you!

There's still a pending problem with
boost/serialization/base_object.hpp in tru64cxx65-042
and como-4_3_3-vc7_1 (both EDG-based):

http://tinyurl.com/9a5em
http://tinyurl.com/d25mz

Basically, the compiler detects at compile time and
bans dereferencing a null pointer as it's done in

static const void_cast_detail::void_caster & invoke(){
  return static_cast<const void_cast_detail::void_caster &>(
    * static_cast<const void_cast_detail::void_caster *>(NULL)
  );
}

This is the same problem as previously discussed (in other
context) in

http://article.gmane.org/gmane.comp.lib.boost.devel/126588

The problem is currently breaking all Boost.Serialization
tests in the aforementioned toolsets.

As this implementation has been recently included to cope
with some CW problems, maybe an easy workaround is to
have it only for that platform, and revert to the
previous "static void invoke" interface for other
toolsets. Another alternative (not tested) could be
resorting to a dummy non-null pointer:

static const void_cast_detail::void_caster & invoke(){
  static const void_cast_detail::void_caster * dummy_ptr;
  return * dummy_ptr;
}

I'm sorry I can't be more helpful, but I'm on a short
vacation, away from my development environment (writing
this from an Internet café.) Hope this helps a little, though.
Good luck,

Joaquín M López Muñoz
Telefónica, Inevstigación y Desarrollo


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk