Если операция присваивания завершилась неудачей, ваш оператор catch будет иметь нулевую ссылку обратно на непризнанную переменную.