Por que o POSIX contradiz os padrões ISO C [fechado]

Vejohttp://pubs.opengroup.org/onlinepubs/009696699/basedefs/sys/socket.h.html

(http://pubs.opengroup.org/onlinepubs/9699919799 é da edição 7 - de 2013 e continua a mesma!)

sockaddr_storage deve ser convertido para outros tipos de estrutura, mas isso contradiz as regras de aliasing dos padrões ANSI e ISO C, tanto quanto eu sei. (Os objetos não podem ser acessados através de ponteiros para tipos incompatíveis, com a exceção de que qualquer coisa pode ser acessada através dos 3 tipos de caracteres e que a estrutura e seu primeiro membro são intercambiáveis.)

Eu sei que essa prática de trabalhar com soquetes existia muito antes de C ser padronizado, mas o POSIX deveria estar em conformidade com a ISO C e, na verdade, contradiz os padrões em seu manual. (Mesmo nas versões mais recentes do POSIX.)

Por que eles fizeram isso assim em primeiro lugar? Por que eles não mudaram?

questionAnswers(2)

yourAnswerToTheQuestion