a bit more broken_type handling