Types: PsiArrayAccessExpression:s[0] : java.lang.String PsiArrayAccessExpression:s[0] : java.lang.String PsiField:s : java.util.concurrent.atomic.AtomicReferenceArray PsiReferenceExpression:s : java.util.concurrent.atomic.AtomicReferenceArray PsiReferenceExpression:s : java.util.concurrent.atomic.AtomicReferenceArray Conversions: new String[2] -> new java.util.concurrent.atomic.AtomicReferenceArray($val$) $val$ new String[2] s[0] -> $qualifier$.get($idx$) $qualifier$[$idx$] s[0] s[0] -> $qualifier$.set($idx$, $val$) $qualifier$[$idx$] = $val$ s[0] = "" New expression type changes: Fails: