|
|
@ -311,6 +311,19 @@ namespace Compiler
|
|
|
|
mNextOperand = false;
|
|
|
|
mNextOperand = false;
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
else if (keyword==Scanner::K_getdistance)
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
mTokenLoc = loc;
|
|
|
|
|
|
|
|
parseArguments ("c", scanner);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Generator::getDistance (mCode, mLiterals, mExplicit);
|
|
|
|
|
|
|
|
mOperands.push_back ('f');
|
|
|
|
|
|
|
|
mExplicit.clear();
|
|
|
|
|
|
|
|
mRefOp = false;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
mNextOperand = false;
|
|
|
|
|
|
|
|
return true;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
return Parser::parseKeyword (keyword, loc, scanner);
|
|
|
|
return Parser::parseKeyword (keyword, loc, scanner);
|
|
|
@ -360,18 +373,18 @@ namespace Compiler
|
|
|
|
|
|
|
|
|
|
|
|
mNextOperand = false;
|
|
|
|
mNextOperand = false;
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else if (keyword==Scanner::K_getdistance)
|
|
|
|
else if (keyword==Scanner::K_getdistance)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
mTokenLoc = loc;
|
|
|
|
mTokenLoc = loc;
|
|
|
|
parseArguments ("c", scanner);
|
|
|
|
parseArguments ("c", scanner);
|
|
|
|
|
|
|
|
|
|
|
|
Generator::getDistance (mCode);
|
|
|
|
Generator::getDistance (mCode, mLiterals, "");
|
|
|
|
mOperands.push_back ('f');
|
|
|
|
mOperands.push_back ('f');
|
|
|
|
|
|
|
|
|
|
|
|
mNextOperand = false;
|
|
|
|
mNextOperand = false;
|
|
|
|
return true;
|
|
|
|
return true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else if (keyword==Scanner::K_getsecondspassed)
|
|
|
|
else if (keyword==Scanner::K_getsecondspassed)
|
|
|
|
{
|
|
|
|
{
|
|
|
|
mTokenLoc = loc;
|
|
|
|
mTokenLoc = loc;
|
|
|
|