Per 7.5,
[errno] expands to a modifiable lvalue175) that has type int, the value of which is set to a positive error number by several library functio
This seems like a valid implementation where &errno would be a constraint violation:
&errno
struct __errno_struct { signed int __val:12; } *__errno_location(void); #define errno (__errno_location()->__val)
So I think the answer is probably no...