Could someone tell me how this is legal: gcc 3.2.3 in 64b (Opteron, linux) seems not to mind, void * foo; (int)(word_t)foo; Shouldn't gcc emmit a warning (as is the case of just doing a void*->int)or an error or is this a legal cast? TIA, Chris