Re: [osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-07 Thread Ulrich Hertlein
Hi Philip, On 7/02/13 15:34, Philip Lamb wrote: UpdateCallback: className is AnimationPathCallback and type_id.name() is PN3osg12NodeCallbackE So it looks like a failure somewhere in RTTI. Both typeid and the dynamic_cast fail to convert the osg::NodeCallback* to an

Re: [osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-07 Thread Robert Osfield
HI Philip, Could you try another compiler under OSX as this looks like a compiler bug to me. Robert. On 7 February 2013 04:34, Philip Lamb p...@eden.net.nz wrote: Hi all, I'm running into an interesting bug in my code which manifests as behaviour that works on one platform (Windows) and not

Re: [osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-07 Thread Stephan Huber
Hi Phil, this worked for me in the past: check your project settings, Symbols hidden By default should be deactivated for both osg and your project. cheers, Stephan Am 07.02.13 05:34, schrieb Philip Lamb: Hi all, I'm running into an interesting bug in my code which manifests as

Re: [osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-07 Thread Robert Osfield
Hi Stephan, On 7 February 2013 10:43, Stephan Huber ratzf...@digitalmind.de wrote: this worked for me in the past: check your project settings, Symbols hidden By default should be deactivated for both osg and your project. Is this a workaround for a bug in the compiler or is it some obscure

Re: [osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-07 Thread Sergey Polischuk
Hi I've one run into similar issue when was compiling some sample under linux, in my case it was solved by adding -rdynamic flag to gcc, i think there are some similar option to your compiler about exporting symbols. Cheers. 07.02.2013, 08:35, "Philip Lamb" p...@eden.net.nz:Hi all, I'm running

Re: [osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-07 Thread Stephan Huber
Hi Robert, this is not a compiler bug, this is by design. gcc compares instances of classes by the pointer to its vtable. (Visual Studio uses a string-comparision) If you define a class in a shared library and use it in your app there are chances that you end up with two vtables of a class,

Re: [osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-07 Thread Robert Osfield
Hi Stephan, Thanks for the explanation, you learn something new everyday :-) Incompatibility like this I'd personally put down as a bug in the design/implementation rather than a feature. I am curious why we haven't seen this particular issue more often. If the visibility of classes is hidden

Re: [osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-07 Thread Philip Lamb
Hi all, Thanks for the pointers to the source of the problem. Indeed it is related to symbol visibility. For reference, I had to change Xcode's default settings as follows: GCC_SYMBOLS_PRIVATE_EXTERN = NO (Setting name in Xcode is Symbols Hidden by Default)

[osg-users] Failure in casting to osg::AnimationPathCallback*

2013-02-06 Thread Philip Lamb
Hi all, I'm running into an interesting bug in my code which manifests as behaviour that works on one platform (Windows) and not on another (OS X) with the same OSG code. (Using OSG trunk, around 3.1.4) I am using the following node visitor to reset animations attached to transform nodes: