Subject: bug#7643: Build failure for SGI IRIX MIPS

From: Chong Yidong <[email-masked]>
Date: Wed, 15 Dec 2010 09:41:20 +0800

Nelson H. F. Beebe reports a build failure of the 23.2.92 pretest on SGI
IRIX MIPS.

The last Emacs version to build ok was 21.3 in January 2004, so this
appears to be a long-standing bug.

> On IRIX, compilation fails in src/process.c like this:
>
> 	cc-1367 c89: ERROR File = process.c, Line = 2431
> 	  A pointer to an incomplete class type is not allowed.
>
> 		uint16_t *ip6 = (uint16_t *) &sin6->sin6_addr;
> 					      ^
>
> 	cc-1367 c89: ERROR File = process.c, Line = 2432
> 	  A pointer to an incomplete class type is not allowed.
>
> 		len = sizeof (sin6->sin6_addr)/2 + 1;
> 			      ^
>
> 	cc-1367 c89: ERROR File = process.c, Line = 2435
> 	  A pointer to an incomplete class type is not allowed.
>
> 		p->contents[--len] = make_number (ntohs (sin6->sin6_port));
> 									 ^
>
> 	cc-1070 c89: ERROR File = process.c, Line = 2489
> 	  The indicated type is incomplete.
>
> 		  return sizeof (struct sockaddr_in6);
> 				 ^
>
> 	cc-1367 c89: ERROR File = process.c, Line = 2546
> 	  A pointer to an incomplete class type is not allowed.
>
> 		  uint16_t *ip6 = (uint16_t *)&sin6->sin6_addr;
> 					       ^
>
> 	cc-1367 c89: ERROR File = process.c, Line = 2547
> 	  A pointer to an incomplete class type is not allowed.
>
> 		  len = sizeof (sin6->sin6_addr) + 1;
> 				^
>
> 	cc-1367 c89: ERROR File = process.c, Line = 2549
> 	  A pointer to an incomplete class type is not allowed.
>
> 		  sin6->sin6_port = htons (i);
> 		  ^
>
> 	cc-1070 c89: ERROR File = process.c, Line = 4388
> 	  The indicated type is incomplete.
>
> 	      struct sockaddr_in6 in6;
> 				  ^
>
> 	8 errors detected in the compilation of "process.c".