test_name 	 bad-c-code-from-argument-anchor-2
test_description An Eiffel routine is using a function whose result type depends on the argument. When the argument is a basic type frozen code gives incorrect results and finalized code generates C code that won't compile.

copy_sub 	 Ace $TEST Ace
copy_raw	 test.e $CLUSTER test.e
copy_raw	 test1.e $CLUSTER test1.e

compile_melted
compile_result	ok

execute_work 	NONE 	exec_output_m
execute_result 	ok
compare		exec_output_m output

compile_frozen
compile_result 	ok
	
c_compile_work
c_compile_result ok

execute_work 	NONE 	exec_output_w
execute_result 	ok
compare		exec_output_w output

compile_final
compile_result 	ok
	
c_compile_final
c_compile_result ok

execute_work 	NONE 	exec_output_f
execute_result 	ok
compare		exec_output_f output


test_end