16 byte pthread stack alignments

Corinna Vinschen corinna-cygwin@cygwin.com
Thu Dec 22 15:32:00 GMT 2011


On Dec 22 09:20, Brian Ford wrote:
> On Thu, 22 Dec 2011, Corinna Vinschen wrote:
> 
> > On Dec 21 15:25, Brian Ford wrote:
> > > On Wed, 21 Dec 2011, Brian Ford wrote:
> > >
> > > Thanks for the fix Christopher, but I must be using the wrong compiler or
> > > something.  Here's my next issue:
> > >
> > > src/winsup/cygwin/child_info.h:
> > > In static member function static cygheap_exec_info*
> > > cygheap_exec_info::alloc():
> > > src/winsup/cygwin/child_info.h:115:
> > > error: invalid use of member cygheap_exec_info::children in static member
> > > function
> > > src/winsup/cygwin/sigproc.cc:914:
> > > error: from this location
> >
> > Did you try to drop the -Werror from the command line, for testing sake?
> 
> No, because in this case it actually is an error, not one converted from a
> warning.  Am I missing something, or shouldn't the cygwin sources compile
> without this kind of difficulty?  Is this really just a difference between
> the Cygwin gcc-4 and the one you guys use to cross compile?

Should be basically the same compiler:

  i686-pc-cygwin-gcc (GCC) 4.5.3 20110428 (Fedora Cygwin 4.5.3-4)

The error message is kind of nonsense anyway.  The expression in question
is

  sizeof (cygheap_exec_info) + (nprocs * sizeof (children[0]))

so it's just a `sizeof', not an actual usage of the member.  Try this
for now:

Index: sigproc.cc
===================================================================
RCS file: /cvs/src/src/winsup/cygwin/sigproc.cc,v
retrieving revision 1.372
diff -u -p -r1.372 sigproc.cc
--- sigproc.cc	10 Dec 2011 01:33:56 -0000	1.372
+++ sigproc.cc	22 Dec 2011 15:30:58 -0000
@@ -911,7 +911,7 @@ cygheap_exec_info::alloc ()
 {
  return (cygheap_exec_info *) ccalloc_abort (HEAP_1_EXEC, 1,
 					     sizeof (cygheap_exec_info)
-					     + (nprocs * sizeof (children[0])));
+					     + (nprocs * sizeof (cchildren)));
 }
 
 void


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list