You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
module [
Comparison,
Sort,
]
Comparison : [LessThan, Equal, GreaterThan]
Sort implements
compare : a, a -> Comparison where a implements Sort
In the same directory, create ImportAbility.roc with contents:
module [
]
import SortAbility
run roc test AbilityImport.roc
Expected Results
Nothing
Actual
~/docs/code/roc/OrderedCollections $ ~/roc/roc_ben-build-2024-05-02-798dd77/roc test AbilityImport.roc
An internal compiler expectation was broken.
This is definitely a compiler bug.
Please file an issue here: https://github.com/roc-lang/roc/issues/new/choose
thread '<unnamed>' panicked at crates/compiler/load_internal/src/file.rs:4535:29:
Import ability member `SortAbility.compare` not available
stack backtrace:
0: rust_begin_unwind
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/std/src/panicking.rs:595:5
1: core::panicking::panic_fmt
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/panicking.rs:67:14
2: import_variable_for_symbol
at /home/ben/roc/roc-src/crates/compiler/load_internal/src/file.rs:4535:29
3: roc_load_internal::file::add_imports::{{closure}}
at /home/ben/roc/roc-src/crates/compiler/load_internal/src/file.rs:4429:17
4: roc_can::abilities::IAbilitiesStore<roc_can::abilities::Pending>::resolve_for_module::{{closure}}
at /home/ben/roc/roc-src/crates/compiler/can/src/abilities.rs:621:44
5: core::iter::adapters::map::map_fold::{{closure}}
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/iter/adapters/map.rs:84:28
6: core::iter::traits::iterator::Iterator::fold
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/iter/traits/iterator.rs:2639:21
7: fold<(roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Resolved>), std::collections::hash::map::IntoIter<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Pending>>, roc_can::abilities::{impl#7}::resolve_for_module::{closure_env#0}<roc_load_internal::file::add_imports::Ctx, roc_load_internal::file::add_imports::{closure_env#0}, roc_load_internal::file::add_imports::{closure_env#1}>, (), core::iter::traits::iterator::Iterator::for_each::call::{closure_env#0}<(roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Resolved>), hashbrown::map::{impl#95}::extend::{closure_env#0}<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Resolved>, core::hash::BuildHasherDefault<wyhash::traits::WyHash>, alloc::alloc::Global, core::iter::adapters::map::Map<std::collections::hash::map::IntoIter<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Pending>>, roc_can::abilities::{impl#7}::resolve_for_module::{closure_env#0}<roc_load_internal::file::add_imports::Ctx, roc_load_internal::file::add_imports::{closure_env#0}, roc_load_internal::file::add_imports::{closure_env#1}>>>>>
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/iter/adapters/map.rs:124:9
8: for_each<core::iter::adapters::map::Map<std::collections::hash::map::IntoIter<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Pending>>, roc_can::abilities::{impl#7}::resolve_for_module::{closure_env#0}<roc_load_internal::file::add_imports::Ctx, roc_load_internal::file::add_imports::{closure_env#0}, roc_load_internal::file::add_imports::{closure_env#1}>>, hashbrown::map::{impl#95}::extend::{closure_env#0}<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Resolved>, core::hash::BuildHasherDefault<wyhash::traits::WyHash>, alloc::alloc::Global, core::iter::adapters::map::Map<std::collections::hash::map::IntoIter<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Pending>>, roc_can::abilities::{impl#7}::resolve_for_module::{closure_env#0}<roc_load_internal::file::add_imports::Ctx, roc_load_internal::file::add_imports::{closure_env#0}, roc_load_internal::file::add_imports::{closure_env#1}>>>>
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/iter/traits/iterator.rs:857:9
9: extend<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Resolved>, core::hash::BuildHasherDefault<wyhash::traits::WyHash>, alloc::alloc::Global, core::iter::adapters::map::Map<std::collections::hash::map::IntoIter<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Pending>>, roc_can::abilities::{impl#7}::resolve_for_module::{closure_env#0}<roc_load_internal::file::add_imports::Ctx, roc_load_internal::file::add_imports::{closure_env#0}, roc_load_internal::file::add_imports::{closure_env#1}>>>
at /cargo/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.0/src/map.rs:6455:9
10: extend<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Resolved>, core::hash::BuildHasherDefault<wyhash::traits::WyHash>, core::iter::adapters::map::Map<std::collections::hash::map::IntoIter<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Pending>>, roc_can::abilities::{impl#7}::resolve_for_module::{closure_env#0}<roc_load_internal::file::add_imports::Ctx, roc_load_internal::file::add_imports::{closure_env#0}, roc_load_internal::file::add_imports::{closure_env#1}>>>
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/std/src/collections/hash/map.rs:3038:9
11: from_iter<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Resolved>, core::hash::BuildHasherDefault<wyhash::traits::WyHash>, core::iter::adapters::map::Map<std::collections::hash::map::IntoIter<roc_module::symbol::Symbol, roc_can::abilities::AbilityMemberData<roc_can::abilities::Pending>>, roc_can::abilities::{impl#7}::resolve_for_module::{closure_env#0}<roc_load_internal::file::add_imports::Ctx, roc_load_internal::file::add_imports::{closure_env#0}, roc_load_internal::file::add_imports::{closure_env#1}>>>
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/std/src/collections/hash/map.rs:3023:13
12: core::iter::traits::iterator::Iterator::collect
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/iter/traits/iterator.rs:2053:9
13: roc_can::abilities::IAbilitiesStore<roc_can::abilities::Pending>::resolve_for_module
at /home/ben/roc/roc-src/crates/compiler/can/src/abilities.rs:605:31
14: add_imports
at /home/ben/roc/roc-src/crates/compiler/load_internal/src/file.rs:4417:27
15: run_solve_solve
at /home/ben/roc/roc-src/crates/compiler/load_internal/src/file.rs:4604:47
16: roc_load_internal::file::run_solve
at /home/ben/roc/roc-src/crates/compiler/load_internal/src/file.rs:4765:13
17: roc_load_internal::file::run_task
at /home/ben/roc/roc-src/crates/compiler/load_internal/src/file.rs:6144:17
18: worker_task
at /home/ben/roc/roc-src/crates/compiler/load_internal/src/file.rs:2091:34
19: roc_load_internal::file::load_multi_threaded::{{closure}}::{{closure}}
at /home/ben/roc/roc-src/crates/compiler/load_internal/src/file.rs:1831:25
20: crossbeam_utils::thread::ScopedThreadBuilder::spawn::{{closure}}
at /home/ben/.cargo/registry/src/index.crates.io-6f17d22bba15001f/crossbeam-utils-0.8.16/src/thread.rs:440:31
21: core::ops::function::FnOnce::call_once{{vtable.shim}}
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/ops/function.rs:250:5
22: <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once
at /rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/alloc/src/boxed.rs:2007:9
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
The text was updated successfully, but these errors were encountered:
Steps to Reproduce
roc test AbilityImport.roc
Expected Results
Nothing
Actual
The text was updated successfully, but these errors were encountered: