This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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 #19444 - build failures with -O1 due to -Wmaybe-uninitialized


On Thu, Jan 14, 2016 at 10:49 AM, Joseph Myers <joseph@codesourcery.com> wrote:
> On Thu, 14 Jan 2016, H.J. Lu wrote:
>
>> This is the right direction, but may not work with -Os.  I am working
>> on a patch to add bits/string-1.h to define _STRING_ARCH_unaligned,
>> which is included unconditionally.
>
> Suppose you apply all Wilco's patches related to string inlines (including
> those that remove many of them from bits/string2.h).  Are there any

His patch can't be applied since it contains odd characters.

> remaining references to _STRING_ARCH_unaligned in installed headers other
> than the definition?
>
> If so, what are they?  If not, it should be moved out of installed headers
> as I said (and bits/ is a namespace exclusively for installed headers).

crypt/md5.c:#if !_STRING_ARCH_unaligned
crypt/sha256.c:#if _STRING_ARCH_unaligned
crypt/sha256.c:#if !_STRING_ARCH_unaligned
crypt/sha512.c:#if !_STRING_ARCH_unaligned
iconv/gconv_simple.c:#if !_STRING_ARCH_unaligned
iconv/gconv_simple.c:#if !_STRING_ARCH_unaligned
iconv/gconv_simple.c:#if !_STRING_ARCH_unaligned
iconv/gconv_simple.c:#if !_STRING_ARCH_unaligned
iconv/loop.c:#if _STRING_ARCH_unaligned || !defined DEFINE_UNALIGNED
iconv/loop.c:#if !defined DEFINE_UNALIGNED && !_STRING_ARCH_unaligned \
iconv/skeleton.c:#if _STRING_ARCH_unaligned
iconv/skeleton.c:  (!_STRING_ARCH_unaligned              \
include/arpa/nameser.h:#if _STRING_ARCH_unaligned
nscd/nscd_gethst_r.c:#if !_STRING_ARCH_unaligned
nscd/nscd_getserv_r.c:#if !_STRING_ARCH_unaligned
nscd/nscd_helper.c:#if !_STRING_ARCH_unaligned
nscd/nscd_helper.c:#if !_STRING_ARCH_unaligned
nscd/nscd_helper.c:#if !_STRING_ARCH_unaligned
resolv/res_send.c:#if _STRING_ARCH_unaligned
resolv/res_send.c:#if _STRING_ARCH_unaligned
stdlib/getenv.c:#if __BYTE_ORDER == __LITTLE_ENDIAN || !_STRING_ARCH_unaligned
stdlib/getenv.c:#if _STRING_ARCH_unaligned
stdlib/getenv.c:#if _STRING_ARCH_unaligned
stdlib/getenv.c:#if _STRING_ARCH_unaligned

> Installed headers should not define things only relevant for building
> glibc, or contain _LIBC conditionals, except where we don't have a cleaner
> alternative for how to avoid internals creeping into installed headers.
> The first preference should be that internal things go in internal headers
> (which includes the include/ wrappers, though arguably those should be
> slimmed down as well with more internal interfaces going in separate
> internal headers that are explicitly included, not in a header with the
> same name as one that gets installed).
>
> --
> Joseph S. Myers
> joseph@codesourcery.com



-- 
H.J.


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