res.add(null_instance)
continue
end
- if param.is_vararg and map.vararg_decl > 0 then
- var vararg = exprs.sub(j, map.vararg_decl)
+ if param.is_vararg and args[i].vararg_decl > 0 then
+ var vararg = exprs.sub(j, args[i].vararg_decl)
var elttype = param.mtype
var arg = self.vararg_instance(mpropdef, recv, vararg, elttype)
res.add(arg)
# Is the associated Java type a primitive one?
#
- # ENSURE `result == (java_type != "Object")`
+ # ENSURE `result == (java_type != "RTVal")`
var is_java_primitive: Bool is lazy do return java_type != "RTVal"
end
return "double"
else if mclass.name == "Byte" then
return "byte"
- else if mclass.name == "NativeString" then
+ else if mclass.name == "CString" then
return "String"
else if mclass.name == "NativeArray" then
return "Array"
redef class AClassdef
private fun compile_to_java(v: JavaCompilerVisitor, mpropdef: MMethodDef, arguments: Array[RuntimeVariable]) do
- if mpropdef == self.mfree_init then
- assert mpropdef.mproperty.is_root_init
+ if mpropdef.mproperty.is_root_init then
if not mpropdef.is_intro then
v.supercall(mpropdef, arguments.first.mtype.as(MClassType), arguments)
end