--- JavaInvoker.java 2009-04-20 21:54:22.000000000 +0900 +++ JavaInvoker.java.new 2009-06-12 11:00:01.000000000 +0900 @@ -466,6 +466,9 @@ if (i < args.length && args[i] != null) { Value arg = args[i].toValue(); + if (arg instanceof Var) + arg = arg.toValue(); + int argCost = marshal.getMarshalingCost(arg); cost = Math.max(argCost + cost, cost);