This check should come before `is_writable`