Remove ability todo in mono

This commit is contained in:
Ayaz Hafiz 2022-05-06 17:41:36 -04:00 committed by ayazhafiz
parent 8bff2875b0
commit 1a53daa665

View file

@ -15,7 +15,7 @@ use roc_debug_flags::{
dbg_do, ROC_PRINT_IR_AFTER_REFCOUNT, ROC_PRINT_IR_AFTER_RESET_REUSE, dbg_do, ROC_PRINT_IR_AFTER_REFCOUNT, ROC_PRINT_IR_AFTER_RESET_REUSE,
ROC_PRINT_IR_AFTER_SPECIALIZATION, ROC_PRINT_IR_AFTER_SPECIALIZATION,
}; };
use roc_error_macros::{internal_error, todo_abilities}; use roc_error_macros::internal_error;
use roc_exhaustive::{Ctor, CtorName, Guard, RenderAs, TagId}; use roc_exhaustive::{Ctor, CtorName, Guard, RenderAs, TagId};
use roc_module::ident::{ForeignSymbol, Lowercase, TagName}; use roc_module::ident::{ForeignSymbol, Lowercase, TagName};
use roc_module::low_level::LowLevel; use roc_module::low_level::LowLevel;
@ -3657,7 +3657,22 @@ pub fn with_hole<'a>(
specialize_naked_symbol(env, variable, procs, layout_cache, assigned, hole, symbol) specialize_naked_symbol(env, variable, procs, layout_cache, assigned, hole, symbol)
} }
AbilityMember(..) => todo_abilities!(), AbilityMember(_member, specialization) => {
let specialization_symbol = specialization
.read()
.unwrap()
.expect("Specialization was never made!");
specialize_naked_symbol(
env,
variable,
procs,
layout_cache,
assigned,
hole,
specialization_symbol,
)
}
Tag { Tag {
variant_var, variant_var,
name: tag_name, name: tag_name,