Я не могу сказать, почему они сделали что-то одно в ядре Linux, но в системах, которые мы разрабатываем, мы склонны не использовать специфичные для C99 функции в коде ядра.Отдельные приложения, как правило, имеют материал, написанный для C99, потому что они, как правило, развертываются на одной известной платформе, а реализация gcc C99 хорошо известна.
Но основной код должен быть развернут на любой платформе, которую требует клиент(в пределах разумного).Мы поставляли системы для AIX, Solaris, Informix, Linux, Tru-64, OpenVMS (!), И наличие компиляторов, совместимых с C99, не всегда гарантировано.
Ядро Linux должно быть значительно более портативным- и, в частности, благодаря компактным встроенным системам.Я полагаю, что эта функция не настолько важна, чтобы игнорировать подобные соображения.