public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Joseph Myers <joseph@codesourcery.com>
To: Martin Sebor <msebor@gmail.com>
Cc: Marek Polacek <polacek@redhat.com>,
	GCC Patches <gcc-patches@gcc.gnu.org>
Subject: Re: C PATCH to rectify warning for character types (PR c/23087)
Date: Fri, 08 Jan 2016 22:27:00 -0000	[thread overview]
Message-ID: <alpine.DEB.2.10.1601082224450.22470@digraph.polyomino.org.uk> (raw)
In-Reply-To: <568FF69B.10803@gmail.com>

On Fri, 8 Jan 2016, Martin Sebor wrote:

> > I don't think it's desirable to raise the warning for this case under
> > different conditions from the warning for other signedness cases.  The
> > targets do differ in signedness - it's just that the difference is between
> > "plain" and "signed" or "plain" and "unsigned", not between signed and
> > unsigned.
> 
> I'm sorry Joseph but I don't quite follow this argument.  Plain
> char is neither a signed [integer] type nor an unsigned [integer]
> type, so it can never differ in signedness from any other type.

Signedness of char (and of bit-fields) is a tristate, "signed", "unsigned" 
and "".  My claim is that a difference between any two of those three 
values is essentially the same kind of difference.  And so at most the 
wording should be adjusted (or maybe an inform ("%<char%> and %<signed 
char%> are different types" added), not the conditions for some such 
warning to be given.

> It seems to me that by the interpretation you suggest, converting
> a signed int* to unsigned long* should be controlled by -Wpointer-
> sign when int and long have the same representation, and by
> -Wincompatible-pointer-types otherwise.  (Which is not what GCC
> does.)

No, because those differ between "int" and "long", not between "signed" 
and "" or "unsigned" and "" as signedness.

-- 
Joseph S. Myers
joseph@codesourcery.com

  reply	other threads:[~2016-01-08 22:27 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-01-07 17:11 Marek Polacek
2016-01-07 21:19 ` Joseph Myers
2016-01-08 17:49   ` Martin Sebor
2016-01-08 22:27     ` Joseph Myers [this message]
2016-01-08 23:28       ` Martin Sebor
2016-01-08 23:51         ` Joseph Myers
2016-01-09  1:21           ` Martin Sebor
2016-01-11 16:37             ` Martin Sebor
2016-01-08 17:54   ` Bernd Schmidt
2016-01-08 18:07     ` Marek Polacek

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=alpine.DEB.2.10.1601082224450.22470@digraph.polyomino.org.uk \
    --to=joseph@codesourcery.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=msebor@gmail.com \
    --cc=polacek@redhat.com \
    /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).