i notice, in the linux kernel source, numerous array initializers of the form: { [ 0 ... whatever] = 0 ; } or something similar. i'm aware of the gcc extension to support ranges in *case* statements, but i'm not aware of where the *array* range syntax is defined. i don't see it as an official C99 feature, and it's not listed in the gcc manual as an extension. so where does it come from? thanks. rday