This is the mail archive of the newlib@sourceware.org mailing list for the newlib project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Fix "/*" within comment warning


On Mar 22 15:32, Yaakov Selkowitz wrote:
> On 2016-03-22 15:14, Corinna Vinschen wrote:
> >On Mar 22 11:10, Yaakov Selkowitz wrote:
> >>On 2016-03-22 04:49, Corinna Vinschen wrote:
> >>>On Mar 21 16:27, Corinna Vinschen wrote:
> >>>>I mean, that was the whole point of asking this question.  If you read
> >>>>https://sourceware.org/ml/newlib/2016/msg00282.html you see that I
> >>>>specificially refer to these types, u_char, u_short, etc.  grep for them
> >>>>on Linux and you'll see more then hundred header files using these
> >>>>types.  They are guarded with __USE_MISC in sys/types.h and there's no
> >>>>explicit enabling invocation in any of the files using these types.
> >>
> >>Due to the incompatibility in licences between glibc and newlib/cygwin, I
> >>have been avoiding looking at the headers directly.
> >>
> >>>So my proposal is this:
> >>>
> >>>diff --git a/newlib/libc/include/sys/types.h b/newlib/libc/include/sys/types.h
> >>>index 52530c5..8ab8670 100644
> >>>--- a/newlib/libc/include/sys/types.h
> >>>+++ b/newlib/libc/include/sys/types.h
> >>>@@ -90,8 +90,7 @@ typedef	quad_t *	qaddr_t;
> >>>  #  define	quad		quad_t
> >>>  #endif
> >>>
> >>>-/* These types are required by netinet/*.h on Cygwin */
> >>>-#if __BSD_VISIBLE || defined(__CYGWIN__)
> >>>+#if __MISC_VISIBLE
> >>>  #ifndef _BSDTYPES_DEFINED
> >>>  /* also defined in mingw/gmon.h and in w32api/winsock[2].h */
> >>>  #ifndef __u_char_defined
> >>
> >>That only works if the parts of our netinet/*.h which use these are
> >>similarly guarded, or their struct members converted to the u_intN_t types
> >>(as in netinet/ip6.h).'
> >
> >Again, the same headers in Linux use the same types, and these
> >headers do NOT use similar guards.  They just include sys/types.h
> >and expect these types to exist.  If that's good enough for glibc...
> 
> Not sure I understand; `grep -r __USE_ /usr/include/netinet/' shows lots of
> __USE_MISC and even a __USE_GNU ...

Doh.  How did I miss them?  <checking glasses>

However, I also checked on multiple files outside netinet and there are
some headers which use u_short etc. without checking for __USE_MISC,
e.g. fts.h and resolv.h.

But, anyway, since Cygwin's netinet headers don't do what glib's do, I
retract my proposal, at least in terms of __CYGWIN__.  But shouldn't we
still use __MISC_VISIBLE instead of __BSD_VISIBLE in sys/type.h to
follow glibc more closely?

I applied Sebastian's patch for the time being.


Thanks,
Corinna

-- 
Corinna Vinschen
Cygwin Maintainer
Red Hat

Attachment: signature.asc
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]