if (defaultExpr != null) defaultExpr.generateExpr(out); else out.print("null");
defaultExpr.generateExpr(out);
  public void generateFixedArgs(PhpWriter out)    throws IOException  {    out.println();    out.print("public ");        // quercus/3960    out.print("static ");        out.print("Value fun_");    out.print(_name);    out.print("(Env env");    if (! isStatic())      out.print(", Value quercus_this");    for (int i = 0; i < _args.length; i++) {      out.print(", ");      out.print("Value v_");      out.print(_args[i].getName());    }    out.println(")");    out.println("  throws Throwable");    out.println("{");    out.pushDepth();    generateBody(out);    out.popDepth();    out.println("}");    String funName = "__quercus_fun_" + _name;    out.println();    out.println("final static AbstractFunction " + funName);    String ref = _isReturnsReference ? "Ref" : "";    if (isStatic()) {      out.print(" = new CompiledFunction" + ref + "_" + _args.length);    }    else {      out.print(" = new CompiledMethod" + ref + "_" + _args.length);    }        out.print("(\"");    out.printJavaString(_name);    out.print("\"");    for (int i = 0; i < _args.length; i++) {      out.print(", ");      Expr defaultExpr = _args[i].getDefault();            if (defaultExpr != null)	defaultExpr.generateExpr(out);      else	out.print("null");    }    out.println(") {");      out.pushDepth();    if (isStatic())      out.print("public Value eval" + ref + "(Env env");    else      out.print("public Value evalMethod" + ref + "(Env env, Value quercus_this");    for (int i = 0; i < _args.length; i++) {      out.print(", Value a" + i);    }    out.println(")");        out.println("  throws Throwable");    out.println("{");    out.print("  return ");    out.print("fun_" + _name + "(env");        if (! isStatic())      out.print(", quercus_this");    for (int i = 0; i < _args.length; i++) {      out.print(", a" + i);    }    out.println(");");        out.println("}");    out.popDepth();    out.println("};");    if (! isGlobal()) {      out.println();      out.println("static { " + funName + ".setGlobal(false); }");    }  }