Hi Richard,
Thanks for doing this. Unfortunately I'm afraid I'm not going to be
able to test/commit this stuff for a few days; My laptop bust 2 weeks
ago (well alright - I dropped it :-( - it should be back from the
fixers any time now.
Cheers,
Phil
Richard Andrews writes:
>
> I'm pleased to announce that orbitcpp-0.30 builds and passes all tests with
> gcc3 pre-release 2001-02-18 (with minor changes).
>
> Phil, I've attached the patches I had to make on orbitcpp-0.30.
>
> The changes in orbitcpp_smartptr.hh, I'm not happy with. The
> const_cast<>()s are a bit of a kludge and I'd like to get rid of them.
>
> The real problem is the code generated to call members. Usually there's a
> dynamic_cast<Something_var &>() which is passed to a member function. The
> problem is that this dynamic_cast generates a temporary (r-value) and the
> compiler (correctly) complains when constructing a Something_out from a
> non-const r-value generated by the dynamic_cast.
>
> We really need to create a local variable to hold the result of the
> dynamic_cast in an l-value. That way the constructors in smartptr.hh don't
> need to take const references and smartptr.hh doesn't need to be changed.
>
> Sorry, but I don't know where to make these changes. Somewhere in
> pass_skels.cc I suppose.
>
>
> The changes to everything/client.cc and server.cc are necessary to make the
> code standard compliant (trivial changes).
>
>
> The mystery segfault problems have disappeared. Probably due to incorrect
> ORBit library linkage before I got things configured OK.
>
>
> Rich
|