public void generateCompoundAssignment(BlockScope currentScope, CodeStream codeStream, MethodBinding writeAccessor, Expression expression, int operator, int assignmentImplicitConversion, boolean valueRequired) {
switch (this.bits & RestrictiveFlagMASK) {
case Binding.FIELD : // assigning to a field
FieldBinding fieldBinding = (FieldBinding) this.codegenBinding;
if (fieldBinding.isStatic()) {
if (fieldBinding.canBeSeenBy(getReceiverType(currentScope), this, currentScope)) {
codeStream.getstatic(fieldBinding);
} else {
// used to store the value
codeStream.generateEmulationForField(fieldBinding);
codeStream.aconst_null();