Hi list,
Wondering if someone will give me a free lesson in C programming.

In g_traversal.c, there's some code to retrieve a float from a t_word* vec.  It looks like this:

*(t_float *)(((char *)vec) + onset));

Why does vec need to be cast to char*?  t_word has to be as big as the largest member of the union, and the largest member has to be the same size as char*, right?  (Otherwise we'd have big problems...)

Thanks,
Jonathan