[osg-users] Preparing to make 3.5.3 dev release, please test

Björn Blissing bjorn.blissing at vti.se
Fri Jun 3 05:39:24 PDT 2016


Hi Robert,

The warnings relating the Operation class comes from the two protected constructors. Since the class uses virtual inheritance it is initialized by the most derived class. So the initializer for the virtual base class is ignored.

So just removing the base class initializer for Operation will remove this warning. I do not think this will have any negative side effects, since base class initializer should be ignored by all compliant compilers anyway.

I have attached the changed file.

Regards
Björn

>-----Original Message-----
>From: osg-users [mailto:osg-users-bounces at lists.openscenegraph.org] On
>Behalf Of Robert Osfield
>Sent: Friday, June 3, 2016 1:46 PM
>To: OpenSceneGraph Users <osg-users at lists.openscenegraph.org>
>Subject: Re: [osg-users] Preparing to make 3.5.3 dev release, please test
>
>Hi Bjorn,
>
>On 3 June 2016 at 09:48, Björn Blissing <bjorn.blissing at vti.se> wrote:
>>
>> I compiled the latest master with Visual Studio 2015.
>>
>> I got a couple of warnings.  First of all I got a ton of these, which all originates
>from the same origin:
>>
>>
>> Code:
>>
>> ...
>> OpenSceneGraph\include\osg/OperationThread(80): warning C4589:
>Constructor of abstract class 'osg::Operation' ignores initializer for virtual base
>class 'osg::Referenced' (compiling source file
>D:\github\OpenSceneGraph\src\osg\AnimationPath.cpp)
>>   OpenSceneGraph\include\osg/OperationThread(80): note: virtual base
>classes are only initialized by the most-derived type (compiling source file
>D:\github\OpenSceneGraph\src\osg\AnimationPath.cpp)
>> ...
>>
>>
>>
>>
>> And the same warnings for the following classes:
>>
>>
>> Code:
>>
>> OpenSceneGraph\src\osgGA\CameraManipulator.cpp(24): warning C4589:
>Constructor of abstract class 'osgGA::CameraManipulator' ignores initializer for
>virtual base class 'osg::Callback'
>>   OpenSceneGraph\src\osgGA\CameraManipulator.cpp(24): note: virtual
>base classes are only initialized by the most-derived type
>> OpenSceneGraph\src\osgGA\StandardManipulator.cpp(51): warning C4589:
>Constructor of abstract class 'osgGA::StandardManipulator' ignores initializer
>for virtual base class 'osg::Callback'
>>   OpenSceneGraph\src\osgGA\StandardManipulator.cpp(51): note: virtual
>base classes are only initialized by the most-derived type
>> OpenSceneGraph\src\osgViewer\ViewerBase.cpp(44): warning C4589:
>Constructor of abstract class 'osgViewer::ViewerBase' ignores initializer for
>virtual base class 'osg::Object'
>>   OpenSceneGraph\src\osgViewer\ViewerBase.cpp(44): note: virtual base
>classes are only initialized by the most-derived type
>> OpenSceneGraph\src\osgViewer\ViewerBase.cpp(50): warning C4589:
>Constructor of abstract class 'osgViewer::ViewerBase' ignores initializer for
>virtual base class 'osg::Object'
>>   OpenSceneGraph\src\osgViewer\ViewerBase.cpp(50): note: virtual base
>classes are only initialized by the most-derived type
>> OpenSceneGraph\src\osgAnimation\AnimationManagerBase.cpp(65):
>warning C4589: Constructor of abstract class
>'osgAnimation::AnimationManagerBase' ignores initializer for virtual base class
>'osg::Callback'
>>   OpenSceneGraph\src\osgAnimation\AnimationManagerBase.cpp(65):
>note: virtual base classes are only initialized by the most-derived type
>
>Unfortunately I don't see these warnings with the compiler I have
>available with the settings that are currently available.  Do you know
>of what to enable these warnings in gcc or Clang?
>
>The nature of these warnings are such that I really need to be able to
>see the warning first hand and attempt a local fix to see the affect.
>
>Cheers,
>Robert.
>_______________________________________________
>osg-users mailing list
>osg-users at lists.openscenegraph.org
>http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OperationThread
Type: application/octet-stream
Size: 6877 bytes
Desc: OperationThread
URL: <http://lists.openscenegraph.org/pipermail/osg-users-openscenegraph.org/attachments/20160603/532c43ac/attachment-0003.obj>


More information about the osg-users mailing list