error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:28:9 │ 2 │ struct S has copy, drop {} │ - To satisfy the constraint, the 'key' ability would need to be added here · 15 │ fun both(_r: R, _c: C) { │ --- 'key' constraint declared here · 28 │ both(S{}, Coin{}); │ ^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::S' does not have the ability 'key' │ 'key' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:28:9 │ 3 │ struct Coin has key {} │ ---- To satisfy the constraint, the 'copy' ability would need to be added here · 15 │ fun both(_r: R, _c: C) { │ ---- 'copy' constraint declared here · 28 │ both(S{}, Coin{}); │ ^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Coin' does not have the ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:29:9 │ 15 │ fun both(_r: R, _c: C) { │ --- 'key' constraint declared here · 29 │ both(0, Coin{}) │ ^^^^^^^^^^^^^^^ │ │ │ │ │ The type 'u64' does not have the ability 'key' │ 'key' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:29:9 │ 3 │ struct Coin has key {} │ ---- To satisfy the constraint, the 'copy' ability would need to be added here · 15 │ fun both(_r: R, _c: C) { │ ---- 'copy' constraint declared here · 29 │ both(0, Coin{}) │ ^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Coin' does not have the ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:33:9 │ 4 │ struct Box has copy, drop { f: T } │ --- To satisfy the constraint, the 'key' ability would need to be added here · 7 │ fun new_box(): Box { │ ------ The type '0x8675309::M::Box' does not have the ability 'key' · 15 │ fun both(_r: R, _c: C) { │ --- 'key' constraint declared here · 33 │ both(new_box(), new_box()) │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 'key' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:33:9 │ 7 │ fun new_box(): Box { │ ------ The type '0x8675309::M::Box' does not have the ability 'copy' · 15 │ fun both(_r: R, _c: C) { │ ---- 'copy' constraint declared here · 33 │ both(new_box(), new_box()) │ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box' can have the ability 'copy' but the type argument 'R' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:37:9 │ 5 │ struct Box3 has copy, drop { f1: T1, f2: T2, f3: T3 } │ ---- To satisfy the constraint, the 'key' ability would need to be added here · 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'key' · 23 │ fun rsrc(_r: R) { │ --- 'key' constraint declared here · 37 │ rsrc(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^^ 'key' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:39:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 39 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'R' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:40:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 40 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'C' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:41:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 41 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'C' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:43:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 43 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'C' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:44:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 44 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'R' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:45:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 45 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'R' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:47:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 47 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'R' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:51:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 51 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'U' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:52:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 52 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'C' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:53:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 53 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'C' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:55:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 55 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'C' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:56:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 56 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'U' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:57:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 57 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'U' does not have the required ability 'copy' │ 'copy' constraint not satisifed error[E05001]: ability constraint not satisfied ┌─ tests/move_check/typing/module_call_constraints_not_satisfied.move:59:9 │ 11 │ fun new_box3(): Box3 { │ ---------------- The type '0x8675309::M::Box3' does not have the ability 'copy' · 19 │ fun cpy(_c: C) { │ ---- 'copy' constraint declared here · 59 │ cpy(new_box3()); │ ^^^^^^^^^^^^^^^^^^^^^^^^ │ │ │ │ │ The type '0x8675309::M::Box3' can have the ability 'copy' but the type argument 'U' does not have the required ability 'copy' │ 'copy' constraint not satisifed