Modified: trunk/gs/base/gximag3x.c =================================================================== --- trunk/gs/base/gximag3x.c 2010-12-10 19:50:53 UTC (rev 11947) +++ trunk/gs/base/gximag3x.c 2010-12-11 23:02:25 UTC (rev 11948) @@ -241,7 +241,9 @@ const gs_image3x_mask_t *pixm = (i == 0 ? &pim->Opacity : &pim->Shape); - *(gs_data_image_t *)&mask[i].image = pixm->MaskDict; + /* Use memcpy because direct assignment breaks ANSI aliasing */ + /* rules and causes SEGV with gcc 4.5.1 */ + memcpy(&mask[i].image, &pixm->MaskDict, sizeof(pixm->MaskDict)); mask[i].image.type = type1; mask[i].image.BitsPerComponent = pixm->MaskDict.BitsPerComponent; }