GNU bug report logs - #7643
Build failure for SGI IRIX MIPS

Previous Next

Package: emacs;

Reported by: beebe <at> math.utah.edu

Date: Wed, 15 Dec 2010 01:36:01 UTC

Severity: important

Tags: moreinfo

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 7643 in the body.
You can then email your comments to 7643 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7643; Package emacs. (Wed, 15 Dec 2010 01:36:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Chong Yidong <cyd <at> stupidchicken.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Wed, 15 Dec 2010 01:36:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: bug-gnu-emacs <at> gnu.org
Subject: Build failure for SGI IRIX MIPS
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".




Information forwarded to owner <at> debbugs.gnu.org, bug-gnu-emacs <at> gnu.org:
bug#7643; Package emacs. (Sat, 08 Jan 2011 20:36:01 GMT) Full text and rfc822 format available.

Message #8 received at 7643 <at> debbugs.gnu.org (full text, mbox):

From: Chong Yidong <cyd <at> stupidchicken.com>
To: "Nelson H. F. Beebe" <beebe <at> math.utah.edu>
Cc: 7643 <at> debbugs.gnu.org
Subject: Re: bug#7643: Build failure for SGI IRIX MIPS
Date: Sat, 08 Jan 2011 15:43:06 -0500
> 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 = 2435
>   A pointer to an incomplete class type is not allowed.
>
>         p->contents[--len] = make_number (ntohs (sin6->sin6_port));

This is a bit of a long shot, but could you check if this maching has
uint16_t defined?

Also, what is the definition of sockaddr_in6 in netinet/in.h and the
definition of ntohs in arpa/inet.h?  On GNU/Linux, they are

struct sockaddr_in6
  {
    __SOCKADDR_COMMON (sin6_);
    in_port_t sin6_port;	/* Transport layer port # */
    uint32_t sin6_flowinfo;	/* IPv6 flow information */
    struct in6_addr sin6_addr;	/* IPv6 address */
    uint32_t sin6_scope_id;	/* IPv6 scope-id */
  };

uint16_t ntohs(uint16_t netshort);

but maybe they are defined differently in IRIX.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#7643; Package emacs. (Fri, 07 Oct 2011 09:22:02 GMT) Full text and rfc822 format available.

Message #11 received at 7643 <at> debbugs.gnu.org (full text, mbox):

From: Rainer Orth <ro <at> CeBiTec.Uni-Bielefeld.DE>
To: Glenn Morris <rgm <at> gnu.org>
Cc: 7643 <at> debbugs.gnu.org
Subject: Re: bug#9684: Emacs 23.3 and 24.0.90 don't build on IRIX 6.5
Date: Fri, 07 Oct 2011 11:20:56 +0200
[Cc'ing to the correct bug.]

Glenn Morris <rgm <at> gnu.org> writes:

> If you have an SGI IRIX, maybe you could help out with
> http://debbugs.gnu.org/cgi/bugreport.cgi?bug=7643 ?
>
> The original submitter never replied.

I can at least try...

> Though presumably you don't see that problem since the C build completed
> for you (also I'm not sure if you are using the same kind of system).

I fear that's exactly the problem: IPv6 support was only added in a
later update of IRIX 6.5 (don't recall exactly which one), so without
knowing what Nelson is (was) running, it's hard to tell.  Maybe emacs
assumes IPv6 support unconditionally (or the test was insufficient)?

I did have various problems building 23.3 on 6.5.30 myself, but nothing
related to IPv6.  I didn't try with cc, though.

	Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#7643; Package emacs. (Fri, 07 Oct 2011 18:49:02 GMT) Full text and rfc822 format available.

Message #14 received at 7643 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: Rainer Orth <ro <at> CeBiTec.Uni-Bielefeld.DE>
Cc: 7643 <at> debbugs.gnu.org
Subject: Re: bug#7643: Build failure for SGI IRIX MIPS
Date: Fri, 07 Oct 2011 14:48:19 -0400
Rainer Orth wrote:

> I fear that's exactly the problem: IPv6 support was only added in a
> later update of IRIX 6.5 (don't recall exactly which one), so without
> knowing what Nelson is (was) running, it's hard to tell.  Maybe emacs
> assumes IPv6 support unconditionally (or the test was insufficient)?

Thanks for looking at this.

However, all the relevant places in process.c seems to be inside #ifdef
AF_INET6, where AF_INET6 is defined by the system headers, not by Emacs.
So if IPv6 support is not present these sections should never be seen.




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#7643; Package emacs. (Fri, 07 Oct 2011 19:20:02 GMT) Full text and rfc822 format available.

Message #17 received at 7643 <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: 7643 <at> debbugs.gnu.org
Cc: Rainer Orth <ro <at> CeBiTec.Uni-Bielefeld.DE>
Subject: Re: bug#7643: Build failure for SGI IRIX MIPS
Date: Fri, 07 Oct 2011 15:18:59 -0400
Web search suggests maybe some IRIXs need -DINET6?

http://www.mail-archive.com/openpkg-users <at> openpkg.org/msg02606.html




Changed bug submitter to 'beebe <at> math.utah.edu' from 'Chong Yidong <cyd <at> stupidchicken.com>' Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Mon, 10 Oct 2011 00:09:01 GMT) Full text and rfc822 format available.

Reply sent to Glenn Morris <rgm <at> gnu.org>:
You have taken responsibility. (Mon, 10 Oct 2011 17:55:02 GMT) Full text and rfc822 format available.

Notification sent to beebe <at> math.utah.edu:
bug acknowledged by developer. (Mon, 10 Oct 2011 17:55:02 GMT) Full text and rfc822 format available.

Message #24 received at 7643-done <at> debbugs.gnu.org (full text, mbox):

From: Glenn Morris <rgm <at> gnu.org>
To: 7643-done <at> debbugs.gnu.org
Subject: Re: bug#7643: Build failure for SGI IRIX MIPS
Date: Mon, 10 Oct 2011 13:54:30 -0400
I am afraid that without more input from you or someone else using IRIX
who can reproduce this, nothing can be done.

At a guess, maybe you need to compile with -DINET6, in which case a
patch like the following might fix it. But I don't see the point in
installing this without any testing.

If you can reply with the contents of netinet/in.h on your system, that
might help, and we can reopen this if needed.

*** src/process.c	2011-09-09 01:06:52 +0000
--- src/process.c	2011-10-07 21:42:30 +0000
***************
*** 39,44 ****
--- 39,51 ----
  
  #include <sys/socket.h>
  #include <netdb.h>
+ 
+ /* Some (which?) IRIX 6.5 hide IPv6 stuff in in.h behind #ifdef INET6.
+    See bug#7643.  */
+ #if defined(AF_INET6) && defined(IRIX6_5)
+ #define INET6
+ #endif
+ 
  #include <netinet/in.h>
  #include <arpa/inet.h>




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Tue, 08 Nov 2011 12:24:04 GMT) Full text and rfc822 format available.

bug unarchived. Request was from Glenn Morris <rgm <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 08 Jun 2012 06:39:02 GMT) Full text and rfc822 format available.

bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 06 Jul 2012 11:24:03 GMT) Full text and rfc822 format available.

This bug report was last modified 11 years and 290 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.