public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/98315] New: [11 regression] libcody breaks Solaris bootstrap
@ 2020-12-16 10:07 ro at gcc dot gnu.org
  2020-12-16 10:08 ` [Bug c++/98315] " ro at gcc dot gnu.org
                   ` (10 more replies)
  0 siblings, 11 replies; 12+ messages in thread
From: ro at gcc dot gnu.org @ 2020-12-16 10:07 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98315

            Bug ID: 98315
           Summary: [11 regression] libcody breaks Solaris bootstrap
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ro at gcc dot gnu.org
                CC: nathan at gcc dot gnu.org
  Target Milestone: ---
            Target: *-*-solaris2.11

Since the introduction of libcody, Solaris 11 bootstrap is broken:

* On Solaris 11.4:

In file included from /usr/include/sys/socket.h:25,
                 from /vol/gcc/src/hg/master/local/gcc/../libcody/cody.hh:29,
                 from /vol/gcc/src/hg/master/local/gcc/cp/mapper-client.h:26,
                 from /vol/gcc/src/hg/master/local/gcc/cp/mapper-client.cc:26:
/usr/include/sys/uio.h:192:3: error: attempt to use poisoned "bzero"
   bzero(&(xuiop)->xu_hint, sizeof ((xuiop)->xu_hint)); \
   ^

  where <sys/uio.h> has

/*
 * Clear the hints portion of an xuio_t, leaving the initial uio_t and the
 * xu_ext union untouched.
 *
 * Note that this does not touch xu_type.  Since zero copy is recognized as
 * UIO_XUIO with xu_type of UIOTYPE_ZEROCOPY, if extending a uio_t not setup
 * for zero copy into a full xuio_t then chances are that xu_type should be
 * initialized too as if the xuio_t had been bzero'd - ie to UIOTYPE_ASYNCIO.
 */
#define XUIO_BZERO_HINTS(xuiop) do { \
                bzero(&(xuiop)->xu_hint, sizeof ((xuiop)->xu_hint)); \
        _NOTE(CONSTCOND) } while (0)

  This macros isn't used anywhere, so I wonder why #pragma poison would be
  offended.

* On Solaris 11.3:

In file included from /usr/include/sys/stream.h:16,
                 from /usr/include/netinet/in.h:66,
                 from /usr/include/sys/socket.h:32,
                 from /vol/gcc/src/hg/master/local/gcc/../libcody/cody.hh:29,
                 from /vol/gcc/src/hg/master/local/gcc/cp/mapper-client.h:26,
                 from /vol/gcc/src/hg/master/local/gcc/cp/mapper-client.cc:26:
/usr/include/sys/strmdep.h:25:26: error: attempt to use poisoned "bcopy"
 #define strbcpy(s, d, c) bcopy(s, d, c)
                          ^

  with the following in <sys/strmdep.h>:

/*
 * Copy data from one data buffer to another.
 * The addresses must be word aligned - if not, use bcopy!
 */
#define strbcpy(s, d, c)        bcopy(s, d, c)

I've hacked around both for no by removing bcopy and bzero from #pragma GCC
poison
in gcc/system.h.

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2020-12-17 21:35 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-16 10:07 [Bug c++/98315] New: [11 regression] libcody breaks Solaris bootstrap ro at gcc dot gnu.org
2020-12-16 10:08 ` [Bug c++/98315] " ro at gcc dot gnu.org
2020-12-16 12:59 ` nathan at gcc dot gnu.org
2020-12-16 14:27 ` nathan at gcc dot gnu.org
2020-12-16 17:26 ` ro at CeBiTec dot Uni-Bielefeld.DE
2020-12-16 17:41 ` nathan at acm dot org
2020-12-16 17:42 ` nathan at gcc dot gnu.org
2020-12-16 17:53 ` ro at CeBiTec dot Uni-Bielefeld.DE
2020-12-16 19:26 ` nathan at gcc dot gnu.org
2020-12-16 19:58 ` nathan at gcc dot gnu.org
2020-12-17 12:22 ` ro at CeBiTec dot Uni-Bielefeld.DE
2020-12-17 21:35 ` nathan at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).