[java] skip plain cannot infer diamond error (IDEA-283409); add ambiguous constructor call (IDEA-272115)

this unifies error messages with method calls and allows more specific tooltips and additional fixes

GitOrigin-RevId: 5ab4340d822bba3d6563da12a16e4c41216a8627
This commit is contained in:
Anna Kozlova
2021-11-26 15:05:23 +01:00
committed by intellij-monorepo-bot
parent 10f7715893
commit e6165048e8
13 changed files with 185 additions and 35 deletions

View File

@@ -29,7 +29,7 @@ public class ConcurrentCollectors {
static <T, K, D, M1 extends Map<K, D>> C<T, M1> groupingBy(F<M1> f,
C<T, D> c,
BiConsumer<M1, T> consumer) {
return new CImpl<error descr="Cannot infer arguments"><></error>(f, consumer, arg(c.getOp()));
return new CImpl<><error descr="'CImpl(ConcurrentCollectors.F<R>, ConcurrentCollectors.BiConsumer<R,T>, ConcurrentCollectors.BiOp<R>)' in 'ConcurrentCollectors.CImpl' cannot be applied to '(ConcurrentCollectors.F<M1>, ConcurrentCollectors.BiConsumer<M1,T>, ConcurrentCollectors.BiOp<ConcurrentCollectors.ConcurrentMap<java.lang.Object,D>>)'">(f, consumer, arg(c.getOp()))</error>;
}
static <K, V, M2 extends ConcurrentMap<K, V>> BiOp<M2> arg(BiOp<V> op) {