Correctly compute the type of an assignment expression.

This change enables following types of statements to work correctly:

    a = b = 3;
    if ((a = getchar()) < 0) { ... }

This fixes 2232082 acc: assignment in comparison segfaults
diff --git a/libacc/acc.cpp b/libacc/acc.cpp
index 6d9213c..808752e 100644
--- a/libacc/acc.cpp
+++ b/libacc/acc.cpp
@@ -1666,6 +1666,7 @@
                             pDestType->tag);
                     break;
             }
+            setR0Type(pDestType);
         }
 
         virtual void loadR0FromR0() {
@@ -2836,6 +2837,7 @@
                             pTargetType->tag);
                     break;
             }
+            setR0Type(pTargetType);
         }
 
         virtual void loadR0FromR0() {