Target 2.11 by default and migrate away from compiler/macro APIs deprecated in 2.11.
To continue supporting 2.10, this commit also adds 2.11 API compatibility shims to the
Add a test for unchecked exception contravariant widening of overridden methods.
Even if unchecked, @throws changes the method signature; implementors
should be warned of the widening of the signature caused by declaring
a runtime @throws.
We might need to reconsider this, eg, by vending a new annotation that
allows for selective enforcement.