Types:
PsiField:b : byte
PsiMethodCallExpression:b.get() : java.lang.Byte
PsiMethodCallExpression:b.get() : java.lang.Byte
PsiMethodCallExpression:b.get() : java.lang.Byte
PsiMethodCallExpression:b.get() : java.lang.Byte
PsiMethodCallExpression:b.getAndSet(new Byte((byte) (b.get() + 1))) : java.lang.Byte
PsiMethodCallExpression:b.set(new Byte((byte) (b.get() + 0))) : void
PsiReferenceExpression:b : byte
PsiReferenceExpression:b : byte
PsiReferenceExpression:b : byte
PsiReferenceExpression:b : byte
PsiReferenceExpression:b : byte
PsiReferenceExpression:b : byte

Conversions:
b.get() -> $qualifier$ $qualifier$.get()
b.get() -> $qualifier$ $qualifier$.get()
b.get() -> $qualifier$ $qualifier$.get()
b.get() -> $qualifier$ $qualifier$.get()
b.getAndSet(new Byte((byte) (b.get() + 1))) -> $qualifier$ = $val$ $qualifier$.getAndSet($val$)
b.set(new Byte((byte) (b.get() + 0))) -> $qualifier$ = $val$ $qualifier$.set($val$)
new AtomicReference<Byte>((byte) 0) -> $qualifier$ new $type$($qualifier$)

New expression type changes:
Fails:
