From eefde1b934044bce32db4ee2dce7f9917d7c840d Mon Sep 17 00:00:00 2001 From: "Kartik K. Agaram" Date: Fri, 24 Jul 2015 01:17:36 -0700 Subject: 1836 --- 033exclusive_container.cc | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/033exclusive_container.cc b/033exclusive_container.cc index b1600032..dfdcdd61 100644 --- a/033exclusive_container.cc +++ b/033exclusive_container.cc @@ -94,8 +94,14 @@ case MAYBE_CONVERT: { reagent base = canonize(current_instruction().ingredients.at(0)); long long int base_address = base.value; type_ordinal base_type = base.types.at(0); - assert(Type[base_type].kind == exclusive_container); - assert(is_literal(current_instruction().ingredients.at(1))); + if (Type[base_type].kind != exclusive_container) { + raise << current_recipe_name () << ": 'maybe-convert' on a non-exclusive-container " << base.original_string << '\n'; + break; + } + if (!is_literal(current_instruction().ingredients.at(1))) { + raise << current_recipe_name() << ": expected ingredient 1 of 'get' to have type 'variant', got '" << current_instruction().ingredients.at(1).original_string << "'\n"; + break; + } long long int tag = current_instruction().ingredients.at(1).value; long long int result; if (tag == static_cast(Memory[base_address])) { -- cgit 1.4.1-2-gfad0