------- Comment #1 from pinskia at gcc dot gnu dot org 2006-11-24 06:00 ------- *pp = malloc (sizeof (int)); **(int **)pp = code; /* segmentation fault here */
You are violating aliasing rules in that "void*" does not alias "int*" so the optimizers are swapping around the store to *pp and the load of *(int**)(pp). -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution| |INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29967