[omniORB] Union problem in GCC 4.x
Duncan Grisby
duncan at grisby.org
Tue Jun 19 18:11:25 BST 2007
On Friday 18 May, Timothy J Brandt wrote:
> This was originally noted in July 2005. I wonder if I have missed
> something since then.
Sorry, I've only just had a chance to look at this.
As far as I can see, as well as being reported in July 2005, it was
fixed then as well. omniORB 4.0.7 changes the #ifdef you mention:
[...]
> #if defined(__GNUG__) || defined(__DECCXX) && (__DECCXX_VER < 60000000)
> friend class _0RL_tcParser_unionhelper_Test_mTestUnion;
> #else
> friend class ::_0RL_tcParser_unionhelper_Test_mTestUnion;
> #endif
>
> => the :: version is necessary for g++ 4
The #ifdef now says
#if defined(__GNUG__) && (__GNUG__ < 4) || defined(__DECCXX) && (__DECCXX_VER < 60000000)
I'm also bemused by the fact that you say the issue affects omniORB
4.1.0. That doesn't even have a friend declaration there at all, because
it no longer has the tcParser helper functions.
Can you post some IDL that definitely exhibits a problem, the version of
omniORB it's a problem with, and gcc's output?
Cheers,
Duncan.
--
-- Duncan Grisby --
-- duncan at grisby.org --
-- http://www.grisby.org --
More information about the omniORB-list
mailing list