[Uml-devel] C++ class import bugfix
Tsuraan
grovenjl at rose-hulman.edu
Wed Dec 4 09:22:02 UTC 2002
In the current CVS version of umbrello, the c++ parser is a little bit broken:
it ignores overloaded operator(). The fix for this is pretty simple; it just
requires adding a couple of lines to CClassParser::parseMethodDeclaration().
The change looks like this:
Where it said
while( lexem != '(' && lexem != ';' && lexem != 0 )
{
if (lexem==CPOPERATOR)
isOperator=true;
PUSH_LEXEM();
getNextLexem();
}
make it instead say
while( lexem != '(' && lexem != ';' && lexem != 0 )
{
if (lexem==CPOPERATOR) {
isOperator=true;
PUSH_LEXEM();
getNextLexem();
}
PUSH_LEXEM();
getNextLexem();
}
That way, it will always grab whatever comes after the operator keyword.
Otherwise, it will see the '(' and exit the loop, which causes it to ignore
operator(). Could someone with CVS commit privileges please fix this?
--jay
More information about the umbrello-devel
mailing list