Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 9 Dec 1998 08:31:57 -0800 (PST)
From:      Ruslan@Shevchenko.Kiev.UA
To:        freebsd-gnats-submit@FreeBSD.ORG
Subject:   misc/9033: <sys/uio.h> refer to <sys/types.h>  but not include one
Message-ID:  <199812091631.IAA00246@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         9033
>Category:       misc
>Synopsis:       <sys/uio.h> refer to <sys/types.h>  but not include one
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:
>Keywords:
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Dec  9 08:40:00 PST 1998
>Last-Modified:
>Originator:     Ruslan Shevchenko
>Organization:
Local paradise
>Release:        3.0-current
>Environment:
FreeBSD kulshedra.internal.grad.kiev.ua 3.0-CURRENT FreeBSD 3.0-CURRENT #0: Sun 
Nov 22 14:20:41 GMT 1998     rssh@kulshedra.internal.grad.kiev.ua:/usr/src/sys/compile/KULSHEDRA  i386

>Description:

A.h refer to something, including in B.h, but A.h not include B.h .

I think, this is design bug.

In FreeBSD such situation, at least with <sys/uio.h> and <sys/types.h>,
which breaks clear compiling of erlang.

<begin quote from erlang mail list:>

> -DHAVE_FINITE=3D1 -DHAVE_DIRENT_H=3D1 -DSTDC_HEADERS=3D1 
-DHAVE_SYS_WAIT_=
...
> known-freebsd3.0/gzio.o -c 
-I/usr/home/rssh/erlang/erlang-47.4.0/erts/sys=
> tem/emulator/zlib 
/usr/home/rssh/erlang/erlang-47.4.0/erts/system/emulato=
> r/drv/gzio.c
> In file included from 
/usr/home/rssh/erlang/erlang-47.4.0/erts/system/emu=
> lator/sys.unix/driver_int.h:30,
>                  from 
/usr/home/rssh/erlang/erlang-47.4.0/erts/system/emu=
> lator/runtime/driver.h:30,
>                  from 
/usr/home/rssh/erlang/erlang-47.4.0/erts/system/emu=
> lator/drv/gzio.c:29:
> /usr/include/sys/uio.h:88: parse error before `readv'
> /usr/include/sys/uio.h:88: warning: data definition has no type or 
storag=

Wow, long output... :-)

Which seems to be the real cause of the error. The fix is to edit the
file erts/system/emulator/sys.unix/driver_int.h and add 

#include <sys/types.h>

just before the inclusion of sys/uio.h. Thanks for trying it out!

<end quote>




>How-To-Repeat:
cat > t.c <<!
#include <uio.h>
!
cc -c t.c
>Fix:
add #include <sys/types.h> in <sys/uio.h>
>Audit-Trail:
>Unformatted:

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199812091631.IAA00246>