Anush Elangovan wrote:

> Bruce,
>  Is 5.8.5 also exposed to this on 64bit machines, even though the
> make check doesn't fail ? 

No.

The earlier code recast a "char*" into whatever was convenient.
Unfortunately, the semantics of "C" have changed over the years
and one compiler implements code motion on the presumption that
different pointer types point to different places in memory.
Therfore, this:

   *(int*)&(od->pzLastArg) = int-expr;

fails.  Some of this code is about 15 years old and it was not
a problem in those days.  So, I now use a unionized bucket
and not all elements erase the entire contents when set.
That was the problem here.  The code trying to determine
zero-or-non-zero was looking at the whole "bucket".  Oops.
I'll go over the code looking for any more of that before
I release this weekend.  :)

Thank you - Bruce

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Autogen-users mailing list
Autogen-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/autogen-users

Reply via email to