Generate the code for the body without return statement at the end and

no curly brace. Step 7

Property definitions

nitc $ AbstractRuntimeFunction :: body_to_c
	# Generate the code for the body without return statement at the end and
	# no curly brace.
	# Step 7
	protected fun body_to_c(v: VISITOR)
	do
		mmethoddef.compile_inside_to_c(v, v.frame.arguments)
	end
src/compiler/abstract_compiler.nit:2216,2--2222,4

nitc $ SeparateRuntimeFunction :: body_to_c
	redef fun body_to_c(v)
	do
		var rta = v.compiler.as(SeparateCompiler).runtime_type_analysis
		if rta != null and not rta.live_mmodules.has(mmethoddef.mclassdef.mmodule) then
			v.add_abort("FATAL: Dead method executed.")
		else
			super
		end
	end
src/compiler/separate_compiler.nit:2527,2--2535,4

nitc $ ThunkFunction :: body_to_c
	redef fun body_to_c(v)
	do
		assert not target_recv.need_anchor
		var frame = v.frame
		assert frame != null
		var selfvar = frame.selfvar
		var arguments = frame.arguments
		var arguments2 = new Array[RuntimeVariable]
		arguments2.push(v.autobox(selfvar, target_recv))
		var resolved_sig = msignature.resolve_for(target_recv, target_recv.as(MClassType), v.mmodule, true)
		for i in [0..resolved_sig.arity[ do
		var param = resolved_sig.mparameters[i]
			var mtype = param.mtype
			if param.is_vararg then
				mtype = v.mmodule.array_type(mtype)
			end
			var temp = v.autobox(arguments[i+1], mtype)
			arguments2.push(temp)
		end
		v.add("/* {mmethoddef}, {recv_mtype.ctype} */")
		var subret: nullable RuntimeVariable = null
		if polymorph_call_flag then
			subret = v.send(mmethoddef.mproperty, arguments2)
		else
			subret = v.call(mmethoddef, arguments2[0].mcasttype.as(MClassType), arguments2)
		end
		if has_return then
			assert subret != null
			var subret2 = v.autobox(subret, return_mtype.as(not null))
			v.assign(frame.returnvar.as(not null), subret2)
		end

	end
src/compiler/abstract_compiler.nit:2313,2--2345,4