public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/107314] New: New -Wsign-compare since r13-3360-g3b3083a598ca3f4b
@ 2022-10-19  7:11 marxin at gcc dot gnu.org
  2022-10-19  7:25 ` [Bug c/107314] [13 Regression] " rguenth at gcc dot gnu.org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-10-19  7:11 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 107314
           Summary: New -Wsign-compare since r13-3360-g3b3083a598ca3f4b
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: jsm28 at gcc dot gnu.org
  Target Milestone: ---

Reduced from grub package:

$ cat http.i
int port;

enum {
  HTTP_PORT, 
  HTTP_MAX_CHUNK_SIZE = 0x80000000
}
http_establish_file() {
  return 0 ? port : HTTP_PORT;
}

$ gcc http.i -c -Werror=sign-compare -O2
http.i: In function ‘http_establish_file’:
http.i:8:14: error: operand of ‘?:’ changes signedness from ‘int’ to ‘enum
<anonymous>’ due to unsignedness of other operand [-Werror=sign-compare]
    8 |   return 0 ? port : HTTP_PORT;
      |              ^~~~
cc1: some warnings being treated as errors

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

* [Bug c/107314] [13 Regression] New -Wsign-compare since r13-3360-g3b3083a598ca3f4b
  2022-10-19  7:11 [Bug c/107314] New: New -Wsign-compare since r13-3360-g3b3083a598ca3f4b marxin at gcc dot gnu.org
@ 2022-10-19  7:25 ` rguenth at gcc dot gnu.org
  2022-10-19 16:58 ` joseph at codesourcery dot com
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-10-19  7:25 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|New -Wsign-compare since    |[13 Regression] New
                   |r13-3360-g3b3083a598ca3f4b  |-Wsign-compare since
                   |                            |r13-3360-g3b3083a598ca3f4b
   Target Milestone|---                         |13.0
           Keywords|                            |diagnostic

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

* [Bug c/107314] [13 Regression] New -Wsign-compare since r13-3360-g3b3083a598ca3f4b
  2022-10-19  7:11 [Bug c/107314] New: New -Wsign-compare since r13-3360-g3b3083a598ca3f4b marxin at gcc dot gnu.org
  2022-10-19  7:25 ` [Bug c/107314] [13 Regression] " rguenth at gcc dot gnu.org
@ 2022-10-19 16:58 ` joseph at codesourcery dot com
  2022-10-20 15:48 ` marxin at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: joseph at codesourcery dot com @ 2022-10-19 16:58 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from joseph at codesourcery dot com <joseph at codesourcery dot com> ---
This is a deliberate change: if any enumerators are outside the range of 
int, then all enumerators now have the enum type, rather than those 
outside the range of int having the enum type and those inside the range 
of int having type int.  (The logic to determine the integer type with 
which the enum type is compatible is unchanged.  In the case of this 
testcase, it produces unsigned int.)

While, as noted in the commit message, the change could be made 
conditional on C2x mode if necessary, I'm doubtful if that would actually 
help grub; presumably they'd rather change things so they work in C2x mode 
rather than keeping using an older mode after -std=gnu2x is the default, 
or postponing the fix until then.

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

* [Bug c/107314] [13 Regression] New -Wsign-compare since r13-3360-g3b3083a598ca3f4b
  2022-10-19  7:11 [Bug c/107314] New: New -Wsign-compare since r13-3360-g3b3083a598ca3f4b marxin at gcc dot gnu.org
  2022-10-19  7:25 ` [Bug c/107314] [13 Regression] " rguenth at gcc dot gnu.org
  2022-10-19 16:58 ` joseph at codesourcery dot com
@ 2022-10-20 15:48 ` marxin at gcc dot gnu.org
  2022-10-20 15:52 ` pinskia at gcc dot gnu.org
  2022-10-20 17:05 ` jsm28 at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-10-20 15:48 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
All right, I've just created upstream issue:
https://savannah.gnu.org/bugs/index.php?63246

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

* [Bug c/107314] [13 Regression] New -Wsign-compare since r13-3360-g3b3083a598ca3f4b
  2022-10-19  7:11 [Bug c/107314] New: New -Wsign-compare since r13-3360-g3b3083a598ca3f4b marxin at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2022-10-20 15:48 ` marxin at gcc dot gnu.org
@ 2022-10-20 15:52 ` pinskia at gcc dot gnu.org
  2022-10-20 17:05 ` jsm28 at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-10-20 15:52 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #2)
> All right, I've just created upstream issue:
> https://savannah.gnu.org/bugs/index.php?63246

Note I submitted a bug about not being able to put this URL in the see also
field (PR 107333).

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

* [Bug c/107314] [13 Regression] New -Wsign-compare since r13-3360-g3b3083a598ca3f4b
  2022-10-19  7:11 [Bug c/107314] New: New -Wsign-compare since r13-3360-g3b3083a598ca3f4b marxin at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2022-10-20 15:52 ` pinskia at gcc dot gnu.org
@ 2022-10-20 17:05 ` jsm28 at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: jsm28 at gcc dot gnu.org @ 2022-10-20 17:05 UTC (permalink / raw)
  To: gcc-bugs

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

Joseph S. Myers <jsm28 at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|---                         |INVALID

--- Comment #4 from Joseph S. Myers <jsm28 at gcc dot gnu.org> ---
Closing this bug, since the new behavior is as intended.

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

end of thread, other threads:[~2022-10-20 17:05 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-19  7:11 [Bug c/107314] New: New -Wsign-compare since r13-3360-g3b3083a598ca3f4b marxin at gcc dot gnu.org
2022-10-19  7:25 ` [Bug c/107314] [13 Regression] " rguenth at gcc dot gnu.org
2022-10-19 16:58 ` joseph at codesourcery dot com
2022-10-20 15:48 ` marxin at gcc dot gnu.org
2022-10-20 15:52 ` pinskia at gcc dot gnu.org
2022-10-20 17:05 ` jsm28 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).