Consider the following:
abstract class A implements Map<String, Number> {
}
class C extends A {
}
void test(C cee) {
def x = cee.name
}
The class C supports map-based property access since it indirectly implements java.util.Map. However the inferred type of a property is not correct.

Consider the following:
The class
Csupports map-based property access since it indirectly implementsjava.util.Map. However the inferred type of a property is not correct.