@vpax reported surprising behavior when working with "void values". While these are not exposed to script land, plumb the places he pointed out are causing confusing behavior. Closes #3640.