--- ./src/ttfmain.c.orig Mon Jun 11 19:53:06 2007 +++ ./src/ttfmain.c Mon Jun 11 19:53:09 2007 @@ -141,19 +141,23 @@ int ttfInterpreter__obtain(ttfMemory *mem, ttfInterpreter **ptti) { ttfInterpreter *tti; + void * temp_var; if (*ptti) { (*ptti)->lock++; return 0; } - tti = mem->alloc_struct(mem, (const ttfMemoryDescriptor *)&st_ttfInterpreter, "ttfInterpreter__obtain"); + + temp_var = &st_ttfInterpreter; + tti = mem->alloc_struct(mem, (const ttfMemoryDescriptor *)temp_var, "ttfInterpreter__obtain"); if (!tti) return fMemoryError; tti->usage = 0; tti->usage_size = 0; tti->ttf_memory = mem; tti->lock = 1; - tti->exec = mem->alloc_struct(mem, (const ttfMemoryDescriptor *)&st_TExecution_Context, "ttfInterpreter__obtain"); + temp_var = &st_TExecution_Context; + tti->exec = mem->alloc_struct(mem, (const ttfMemoryDescriptor *)temp_var, "ttfInterpreter__obtain"); if (!tti->exec) { mem->free(mem, tti, "ttfInterpreter__obtain"); return fMemoryError; @@ -225,6 +229,7 @@ TT_Instance I; ttfMemory *mem = tti->ttf_memory; F26Dot6 ww, hh; + void *temp_var; this->tti = tti; this->design_grid = design_grid; @@ -297,7 +302,8 @@ return fMemoryError; tti->usage_size = this->nMaxComponents * MAX_SUBGLYPH_NESTING; } - this->face = mem->alloc_struct(mem, (const ttfMemoryDescriptor *)&st_TFace, "ttfFont__Open"); + temp_var = &st_TFace; + this->face = mem->alloc_struct(mem, (const ttfMemoryDescriptor *)temp_var, "ttfFont__Open"); if (this->face == NULL) return fMemoryError; memset(this->face, 0, sizeof(*this->face)); @@ -310,7 +316,8 @@ code = r->Error(r); if (code < 0) return fBadFontData; - this->inst = mem->alloc_struct(mem, (const ttfMemoryDescriptor *)&st_TInstance, "ttfFont__Open"); + temp_var = &st_TInstance; + this->inst = mem->alloc_struct(mem, (const ttfMemoryDescriptor *)temp_var, "ttfFont__Open"); if (this->inst == NULL) return fMemoryError; memset(this->inst, 0, sizeof(*this->inst)); --- ./src/gdevpdfd.c.orig Mon Jun 11 19:53:18 2007 +++ ./src/gdevpdfd.c Mon Jun 11 19:53:54 2007 @@ -833,6 +833,7 @@ gs_id id = gs_next_ids(cvd->mdev.memory, 1); cos_value_t v; const pdf_resource_t *pres; + void *temp_var; memset(&s, 0, sizeof(s)); s.ctm.xx = cvd->m.xx; @@ -842,7 +843,8 @@ s.ctm.tx = cvd->m.tx; s.ctm.ty = cvd->m.ty; memset(&inst, 0, sizeof(inst)); - inst.saved = (gs_state *)&s; /* HACK : will use s.ctm only. */ + temp_var = &s; + inst.saved = (gs_state *)temp_var; /* HACK : will use s.ctm only. */ inst.template.PaintType = 1; inst.template.TilingType = 1; inst.template.BBox.p.x = inst.template.BBox.p.y = 0; --- ./src/gdevpdfi.c.orig Mon Jun 11 19:54:05 2007 +++ ./src/gdevpdfi.c Mon Jun 11 19:58:52 2007 @@ -922,6 +922,7 @@ cos_value_t v; const pdf_resource_t *pres; int code; + void *temp_var; memset(&s, 0, sizeof(s)); s.ctm.xx = pmat->xx; @@ -931,7 +932,8 @@ s.ctm.tx = pmat->tx; s.ctm.ty = pmat->ty; memset(&inst, 0, sizeof(inst)); - inst.saved = (gs_state *)&s; /* HACK : will use s.ctm only. */ + temp_var = &s; + inst.saved = (gs_state *)temp_var; /* HACK : will use s.ctm only. */ inst.template.PaintType = 1; inst.template.TilingType = 1; inst.template.BBox.p.x = inst.template.BBox.p.y = 0; --- ./src/gdevplnx.c.orig Mon Jun 11 19:59:11 2007 +++ ./src/gdevplnx.c Mon Jun 11 20:02:41 2007 @@ -549,8 +549,8 @@ if (lop != lop_orig) { lopis = *pis; - gs_set_logical_op((gs_state *)&lopis, lop); pis_draw = &lopis; + gs_set_logical_op((gs_state *)pis_draw, lop); } return dev_proc(plane_dev, fill_path) (plane_dev, pis_draw, ppath, params, &dcolor, pcpath); @@ -582,8 +582,8 @@ if (lop != lop_orig) { lopis = *pis; - gs_set_logical_op((gs_state *)&lopis, lop); pis_draw = &lopis; + gs_set_logical_op((gs_state *)pis_draw, lop); } return dev_proc(plane_dev, stroke_path) (plane_dev, pis_draw, ppath, params, &dcolor, pcpath);