Czy & errno legal C?

Na 7,5,

[errno] rozwija się do modyfikowalnej wartości175), która ma typ int, którego wartość jest ustawiana na dodatnią liczbę błędów przez kilka funkcji bibliotecznych. Nie jest określone, czy errno jest makro lub identyfikatorem zadeklarowanym za pomocą powiązania zewnętrznego. Jeśli definicja makra jest pomijana w celu uzyskania dostępu do rzeczywistego obiektu lub program definiuje identyfikator o nazwie errno, zachowanie jest niezdefiniowane.

175) Makro errno nie musi być identyfikatorem obiektu. Może rozwinąć się do modyfikowalnej wartości l wynikającej z wywołania funkcji (na przykład * errno ()).

Nie jest dla mnie jasne, czy to wystarczy&errno nie być naruszeniem ograniczenia. Język C ma lwartości (takie jak zmienne klasy pamięci-rejestru, jednak mogą być tylko automatyczne, takerrno nie może być zdefiniowany jako taki), dla którego& operator jest naruszeniem ograniczenia.

Jeśli&errno jest legalne C, czy musi być stałe?

questionAnswers(5)

yourAnswerToTheQuestion