E0068

E0068#

Warning name: declaration_unimplemented

Declaration is unimplemented.

This warning is emitted when a declare item is left without a matching implementation in the same package. It can apply to declared functions, methods, abstract types, and implementation relations.

Leaving a declaration unimplemented is useful while designing an API, but it can also mean that callers can see a contract that the package never actually provides. Enable this warning when you want declaration stubs to be temporary.

Erroneous example#

declare fn f() -> Unit

Suggestion#

Provide an implementation, or remove the declaration if the API is no longer needed:

fn f() -> Unit {
  println("Hello")
}