The storage classes are mutually exclusive. For example, static means "cannot be seen from outside" (among other things), while extern means "can be seen from outside." So having something be both static and extern makes no sense - either it can be seen, or it cannot be seen.