'Why does the following not work for Dagger/Anvil

I have the following interface

interface A { 
    fun doSomething1()
    fun doSomething2()
}
abstract Aable : A {
    override fun doSomething1() {}
}

The following doesnt work

@ContributesBinding(ApplicationScope::class, boundType = A::class)
class B : Aable() {
}

nor does

@ContributesMultiBinding(ApplicationScope::class, boundType = A::class)
class B : Aable(), A {
}

It throws the error contributes a binding, but does not specify the bound type even when a boundType is explicitly provided.. I am new to Anvil and Dagger, so sorry if this is simple enough but I haven't been able to figure out how to get this to work. Thanks.



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source