{
next_token.value = CharClass.convertEscapes(next_token.value);
}
catch ( LexException le)
{
throw new RuleActionException( "Bad character literal: "+le.getMessage(), le);
}
parse(ConstExprParser.cep_number,
new Integer( ( (CharacterLiteral) next_token).intValue()));
}
else if ( next_token.symbol==PreprocessParser.lex_identifier)
parse( ConstExprParser.cep_number, next_token.value.equals( "true") ? ONE : ZERO);
else if ( next_token instanceof NumericLiteral)
try {
parse(ConstExprParser.cep_number,
new Integer( ( (NumericLiteral) next_token).intValue()));
}
catch (LexException le) {
throw new RuleActionException("Bad numeric literal: " +
le.getMessage(), le);
}
else if ( next_token instanceof AltSymbolToken)
{
AltSymbolToken token=(AltSymbolToken)next_token;