summaryrefslogtreecommitdiff
path: root/src/lem_interp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lem_interp')
-rw-r--r--src/lem_interp/interp_lib.lem6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lem_interp/interp_lib.lem b/src/lem_interp/interp_lib.lem
index 8b390b8a..2922db67 100644
--- a/src/lem_interp/interp_lib.lem
+++ b/src/lem_interp/interp_lib.lem
@@ -120,6 +120,12 @@ let rec most_significant v =
| V_vector_sparse _ _ _ _ _ -> most_significant (fill_in_sparse v)
| V_lit (L_aux L_one _) -> v
| V_lit (L_aux L_zero _) -> v
+ | V_lit (L_aux (L_num n) lt) ->
+ if n = 1
+ then V_lit (L_aux L_one lt)
+ else if n = 0
+ then V_lit (L_aux L_zero lt)
+ else Assert_extra.failwith ("most_significant given non-vector " ^ (string_of_value v))
| V_lit (L_aux L_undef _) -> v
| V_unknown -> V_unknown
| _ -> Assert_extra.failwith ("most_significant given non-vector " ^ (string_of_value v))