compiler/libec: (#276) Fixed mistake introduced in d3a2010cf68cf33b7f4deab52e2929beb4...
authorJerome St-Louis <jerome@ecere.com>
Tue, 27 May 2014 04:34:52 +0000 (00:34 -0400)
committerJerome St-Louis <jerome@ecere.com>
Tue, 27 May 2014 04:34:52 +0000 (00:34 -0400)
compiler/bootstrap/libec/bootstrap/pass15.c
compiler/libec/src/pass15.ec

index 41ec3f3..9267afc 100644 (file)
@@ -11554,7 +11554,7 @@ part = (uint64)v;
 break;
 }
 }
-bits += part << bitMember->pos;
+bits |= part << bitMember->pos;
 }
 }
 }
index fda2c99..dea1f00 100644 (file)
@@ -5119,7 +5119,7 @@ void ComputeInstantiation(Expression exp)
                                  case intPtrType:     { intptr v; type.isSigned ? GetIntPtr(value, &v) : GetUIntPtr(value, &v); part = (uint64)v; break; }
                                  case intSizeType:    { intsize v; type.isSigned ? GetIntSize(value, &v) : GetUIntSize(value, &v); part = (uint64)v; break; }
                               }
-                              bits += part << bitMember.pos;
+                              bits |= part << bitMember.pos;
                            }
                         }
                      }