Bruce Evans wrote:
> 
> > c -c -O -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes
> > -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual
> > -fformat-extensions -ansi  -nostdinc -I-  -I. -I../.. -I../../../include
> > -I../../contrib/dev/acpica/Subsystem/Include  -D_KERNEL -include
> > opt_global.h -elf  -mpreferred-stack-boundary=2
> > ../../i386/i386/machdep.c
> > ../../i386/i386/machdep.c:761: warning: function declaration isn't a
> > prototype
> > ../../i386/i386/machdep.c: In function `osigreturn':
> > ../../i386/i386/machdep.c:771: dereferencing pointer to incomplete type
> > ../../i386/i386/machdep.c:767: warning: `scp' might be used
> > uninitialized in this function
> > *** Error code 1
> >
> >
> > because osigreturn_args is defined only in COMPAT_43.
> > (making it not really an option) This is in the function
> > int
> > osigreturn(p, uap)
> > (Old_sigreturn)... surely this should also be made conditional on
> > COMPAT_43?
> > The trouble with that is tha the new sigreturn calls the osigreturn in
> > some cases
> >
> > if (((struct osigcontext *)ucp)->sc_trapno == 0x01d516)
> > to be exact..
> > this needs cleaning up. Who understands this stuff?
> 
> I sent (not quite right) patches for it to Marcel a year ago.  Just add
> (not quite right) COMPAT_43 || COMPAT_SUNOS ifdefs in about 50 places,
> and avoid calling osigreturn when it doesn't exist.  The "not quite right"
> part is that this has nothing to do with 4.3BSD or SunOS compatibility.
> It is for 4.4BSD/FreeBSD[2-3] compatibility.  Precise ifdefs for it could
> get very messy.

Correct. This is still on my plate. I intend to try to create the
"precise" ifdefs. I anticipate a number of fundamental changes before it
can be done cleanly, starting with syscalls.master. Making the
Linuxulator independent of COMPAT_43 is part of it as well (more like a
case study).

If the precise ifdefs are too costly, the "not quite right" approach
will probably be preferable. I didn't want to implement the "not quite
right" fix as an interim solution, because interim somehow gets a more
permanent nature in these cases...

-- 
Marcel Moolenaar
  mail: [EMAIL PROTECTED] / [EMAIL PROTECTED]
  tel:  (408) 447-4222


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to