p.print(ident);   if (Utils.isMathMethod(prefix, ident))
if (Utils.isMathMethod(prefix, ident) && (Utils.mathMethodRequiresFloatPrefix(prefix, ident))) {
    public void visitMethodCallExpression(JMethodCallExpression self,                                          JExpression prefix,                                          String ident,                                          JExpression[] args) {        assert (!ident.equals(Names.receiveMethod)) :            "Error: RStream code generation should not see network receive method";            p.print(ident);            //we want single precision versions of the math functions        if (Utils.isMathMethod(prefix, ident))             p.print("f");                p.print("(");        if (args != null) {            for (int i = 0; i < args.length; i++) {                if (i != 0) {                    p.print(", ");                }                /* this is a hack but there is no other way to do it,                   if we are currently visiting fscanf and we are at the 3rd                   argument, prepend an & to get the address and pass the pointer                    to the fscanf                */                if (ident.equals(Names.fscanf) && i == 2)                    p.print("&");                args[i].accept(this);            }        }        p.print(")");    }