From: Andrew Burgess <aburgess@redhat.com>
To: Andrea Monaco <andrea.monaco@autistici.org>
Cc: gdb@sourceware.org
Subject: Re: -Werror enabled by default on GNU/Hurd
Date: Thu, 30 Dec 2021 15:55:29 +0000 [thread overview]
Message-ID: <20211230155529.GC2308572@redhat.com> (raw)
In-Reply-To: <87fsqbthf7.fsf@autistici.org>
* Andrea Monaco via Gdb <gdb@sourceware.org> [2021-12-29 19:06:04 +0100]:
>
> > with this patch I am now able to build GDB on GNU/Hurd (i686). This
> > might help you out.
>
> Thanks, that solves a warning. But the build still fails with this
> output:
>
>
> CXX msg_U.o
> cc1: warning: command-line option '-Wno-mismatched-tags' is valid for C++/ObjC++ but not for C
> cc1: warning: command-line option '-Wsuggest-override' is valid for C++/ObjC++ but not for C
> cc1: warning: command-line option '-Wdeprecated-copy' is valid for C++/ObjC++ but not for C
> cc1: warning: command-line option '-Wdeprecated-copy-dtor' is valid for C++/ObjC++ but not for C
> cc1: warning: command-line option '-Wredundant-move' is valid for C++/ObjC++ but not for C
> cc1: warning: command-line option '-Wstrict-null-sentinel' is valid for C++/ObjC++ but not for C
> msg_U.c: In function 'msg_set_init_ports':
> msg_U.c:1044:22: error: conversion from 'unsigned int' to 'short unsigned int' changes value from '4294967295' to '65535' [-Werror=overflow]
> 1044 | /* msgtl_name = */ MACH_MSG_TYPE_POLYMORPHIC,
> | ^~~~~~~~~~~~~~~~~~~~~~~~~
> msg_U.c: In function 'msg_set_dtable':
> msg_U.c:1838:22: error: conversion from 'unsigned int' to 'short unsigned int' changes value from '4294967295' to '65535' [-Werror=overflow]
> 1838 | /* msgtl_name = */ MACH_MSG_TYPE_POLYMORPHIC,
> | ^~~~~~~~~~~~~~~~~~~~~~~~~
> cc1: all warnings being treated as errors
> Makefile:1684: recipe for target 'msg_U.o' failed
> make: *** [msg_U.o] Error 1
I don't claim to know anything about GNU/Hurd, this was the first time
I ever installed it.
The file msg_U.c is generated using the mig tool, and the .defs files
binutils-gdb/gdb/msg.defs. The .defs file just includes
/usr/include/hurd/msg.h. And the makefile fragment that builds the
msg_U.c is found in binutils-gdb/gdb/config/i386/i386gnu.mn.
I notice in the above, that my version of those two lines is slightly
different, like this:
/* msgtl_name = */ (unsigned short) MACH_MSG_TYPE_POLYMORPHIC,
Which would solve the error you're seeing. Finally, here's the
version number information for the mig tool I'm using:
$ mig --version
i686-gnu-mig (GNU MIG) 1.8+git20200618
Remembering that you probably understand all this far better than me,
I wonder if you need to update your version of mig?
As a last resort if you patch your generated file, adding the cast
that I see, is this enough to finish building GDB? Clearly this isn't
a long term solution, but it feels like the above warning is a tooling
issue, rather than a problem with the GDB source.
Thanks,
Andrew
next prev parent reply other threads:[~2021-12-30 15:55 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-12-29 18:06 Andrea Monaco
2021-12-30 15:55 ` Andrew Burgess [this message]
-- strict thread matches above, loose matches on Subject: below --
2021-12-28 22:16 Andrea Monaco
2021-12-29 2:49 ` Simon Marchi
2021-12-29 3:46 ` Joel Brobecker
2021-12-29 14:43 ` Andrew Burgess
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211230155529.GC2308572@redhat.com \
--to=aburgess@redhat.com \
--cc=andrea.monaco@autistici.org \
--cc=gdb@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).