[Bf-committers] Compiler error with MSVC6 on SG_Tree.cpp
Peter den Bak
bf-committers@blender.org
Mon, 17 May 2004 21:36:35 +0200
Hi,
SG_Tree.cpp comes with compile error's using the MSVC6 compiler.
Using MSVC7 works fine so it is MSVC6 specific.
Here is a piece of code line 101-127:
SG_Tree* SG_Tree::Find(SG_Node *node)
{
if (m_client_object == node)
return this;
SG_Tree *left(m_left), *right(m_right);
if (left && right)
{
if (right->m_bbox.intersects(node->BBox()))
std::swap(left, right);
}
if (left)
{
SG_Tree* ret = left->Find(node);
if (ret) return ret;
}
if (right)
{
SG_Tree* ret = right->Find(node);
if (ret) return ret;
}
return NULL;
}
And here is the compiler output:
Compiling...
SG_Tree.cpp
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(106) :
error C2061: syntax error : identifier 'm_left'
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(106) :
error C2061: syntax error : identifier 'm_right'
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(108) :
warning C4551: function call missing argument list
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(108) :
warning C4551: function call missing argument list
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(110) :
error C2227: left of '->m_bbox' must point to class/struct/union
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(110) :
error C2228: left of '.intersects' must have class/struct/union type
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(114) :
warning C4551: function call missing argument list
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(116) :
error C2227: left of '->Find' must point to class/struct/union
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(120) :
warning C4551: function call missing argument list
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(122) :
error C2227: left of '->Find' must point to class/struct/union
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(283) :
error C2374: 'x' : redefinition; multiple initialization
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(272) :
see declaration of 'x'
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(288) :
error C2374: 'y' : redefinition; multiple initialization
F:\Develop\CVStree\blender\source\gameengine\SceneGraph\SG_Tree.cpp(246) :
see declaration of 'y'
Error executing cl.exe.
blender.exe - 8 error(s), 4 warning(s)
The trouble starts at line 106
Is this another Microsoft bug?
And can someone come up with a solution?
Thanks in advance
Regards,
Peter