Hi Robert and Wang,

When trying to build OSG in 64 bits under Windows (MSVC9), I ran into a
small issue (it does break the build, though) with the '<<' operator of
osgDB::OutputStream. The problem occurs whenever the size of an std::vector
/ std::map is sent to the operator. The error I get is like this :


1>..\..\OpenSceneGraph\src\osgDB\OutputStream.cpp(365) : error C2593:
'operator <<' is ambiguous
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(97): could
be 'osgDB::OutputStream &osgDB::OutputStream::operator <<(double)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(96): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(float)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(93): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(unsigned long)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(92): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(long)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(91): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(unsigned int)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(90): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(int)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(89): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(unsigned short)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(88): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(short)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(87): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(unsigned char)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(86): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(char)'
1>
 C:\Work\software\OSG\OpenSceneGraph\include\osgDB/OutputStream(85): or
  'osgDB::OutputStream &osgDB::OutputStream::operator <<(bool)'

This is because size_type is an unsigned long long. Since I have no idea
about the other platforms, I am unable to provide a portable fix. Adding an
operator for unsigned long long type solves the problem for me.

Regards,
Mourad

On Thu, Feb 4, 2010 at 12:11 PM, Robert Osfield <[email protected]>wrote:

> Thanks Wang Rui, I've updated the website and merged the changes. The
> page on the wiki is:
>
>
> http://www.openscenegraph.org/projects/osg/wiki/Support/KnowledgeBase/SerializationSupport
>
> Robert.
>
> On Thu, Feb 4, 2010 at 5:13 AM, Wang Rui <[email protected]> wrote:
> > Hi Robert,
> >
> > Sorry for the delay, but I need a little more time to think and write
> > in English, rather than do coding. :)
> >
> > I don't have access to edit the wiki page, so I have to attach it in
> > the osg2_wiki.txt file, following the format of trac. Could you have a
> > review and put the wiki page somewhere? Hope it helps when you and
> > others start thinking of writing wrappers for the new format.
> >
> > I also did a small fix to the ObjectWrapper header, to add a
> > OSGDB_EXPORT macro to RegisterCompressorProxy, and modified the
> > findCompressor() method to look for custom compressors in libraries
> > such like osgdb_compressor_name.so, which was described in the wiki
> > page chapter 2.4.
> >
> > Regards,
> >
> > Wang Rui
> >
> > _______________________________________________
> > osg-submissions mailing list
> > [email protected]
> >
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
> >
> >
> _______________________________________________
> osg-submissions mailing list
> [email protected]
>
> http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org
>
_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to