Strict distinction of the different types of variables and the consequences thereof are quite new for me switching from Perl to C.
Returns:
x when c is true, otherwise y.
Remarks:
The returned variable type depends on the type of the arguments;[...]
Of course it's objectively right, but I thought if x is a var and y is an int then if c is true the returned variable is a var, otherwise it is an int. I never have guessed that the arguments themselves have been touched for conversion to either int or var.