dns.c:5278:73: error: expected identifier or ‘(’ before numeric constant
union { unsigned char b[dns_p_calcsize((512))]; struct dns_packet p; } _P = { 0 }; ^~
dns.c:5279:39: error: request for member ‘p’ in something not a structure or union
struct dns_packet *P = dns_p_init(&_P.p, 512); ^
In file included from /usr/include/ctype.h:36,
from dns.c:44:
dns.c: In function ‘dns_hints_query’:
dns.c:6840:73: error: expected identifier or ‘(’ before numeric constant
union { unsigned char b[dns_p_calcsize((512))]; struct dns_packet p; } _P = { 0 }; ^~
dns.c:6861:22: error: request for member ‘p’ in something not a structure or union
P = dns_p_init(&_P.p, 512); ^
...
(there's more occurrences of this pattern in the same file)
renaming _P to something like _GTLSP makes compilation succeed.
I believe this problem also exists on Solaris 10 (and 11).