Er, `throws IllegalArgumentException` **will** cause a `@Provides methods must not have throws clause` error.

What matters most here IMO is that checked exceptions cause generated code to fail compilation later (_unhandled exception_ for the `get()` or `injectMembers()` of the generated `Binding`), whereas it's not a problem for a `throws` with an unchecked exception.

We could test both cases, but is it worth it? (the assumption here is that there's no real value in ruling out unchecked exceptions, but it's not worth the hassle to allow them; so we reject them, on the other assumption that Modules are special-enough beasts that developers have near-total control on them and can easily remove such offending-though-harmless `throws` clauses).