Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.std.c > #6343

Re: Why is shifting too far undefined behvaior?

From Tim Rentsch <txr@shamko.com>
Newsgroups comp.std.c
Subject Re: Why is shifting too far undefined behvaior?
Date 2021-10-09 04:27 -0700
Organization A noiseless patient Spider
Message-ID <87ee8uh1zi.fsf@shamko.com> (permalink)
References <siceh0$1lm$1@solani.org>

Show all headers | View raw


Philipp Klaus Krause <pkk@spth.de> writes:

> Looking at the C23 draft N2596, section J.2 (but this AFAIK has been
> the same forever), we see that there is undefined behavior, when "An
> expression is shifted by a negative number or by an amount greater
> than or equal to the width of the promoted expression (6.5.7)." or
> "An expression having signed promoted type is left-shifted and
> either the value of the expression is negative or the result of
> shifting would not be representable in the promoted type (6.5.7)."
>
> Does anyone know why this was made undefined (as opposed to yielding
> an unspecified value)?

This question tacitly assumes that there needs to be a reason.
To me it seems quite plausible that these cases were left as
undefined behavior simply because no one saw any reason to
define them.  Not everything thinks that just because something
can be done that it should be done.

> The C99 rationale doesn't mention anything.

That observation supports the hypothesis that no one thought it
important to define the behavior in any way.

Back to comp.std.c | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

Why is shifting too far undefined behvaior? Philipp Klaus Krause <pkk@spth.de> - 2021-09-21 13:09 +0200
  Re: Why is shifting too far undefined behvaior? Ike Naar <ike@faeroes.freeshell.org> - 2021-09-21 11:33 +0000
    Re: Why is shifting too far undefined behvaior? Richard Kettlewell <invalid@invalid.invalid> - 2021-09-21 12:47 +0100
  Re: Why is shifting too far undefined behvaior? Richard Damon <Richard@Damon-Family.org> - 2021-09-21 08:29 -0400
    Re: Why is shifting too far undefined behvaior? Vincent Lefevre <vincent-news@vinc17.net> - 2021-09-22 01:17 +0000
      Re: Why is shifting too far undefined behvaior? Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2021-09-21 19:05 -0700
        Re: Why is shifting too far undefined behvaior? James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-09-22 00:02 -0400
          Re: Why is shifting too far undefined behvaior? Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2021-09-21 21:12 -0700
            Re: Why is shifting too far undefined behvaior? James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-09-22 09:42 -0400
          Re: Why is shifting too far undefined behvaior? Richard Damon <Richard@Damon-Family.org> - 2021-09-22 07:08 -0400
            Re: Why is shifting too far undefined behvaior? James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-09-22 09:42 -0400
              Re: Why is shifting too far undefined behvaior? James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-09-23 12:18 -0400
          Re: Why is shifting too far undefined behvaior? Vincent Lefevre <vincent-news@vinc17.net> - 2021-09-23 11:10 +0000
            Re: Why is shifting too far undefined behvaior? James Kuyper <jameskuyper@alumni.caltech.edu> - 2021-09-23 12:22 -0400
        Re: Why is shifting too far undefined behvaior? Vincent Lefevre <vincent-news@vinc17.net> - 2021-09-23 11:08 +0000
  Re: Why is shifting too far undefined behvaior? Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2021-09-21 11:01 -0700
    Re: Why is shifting too far undefined behvaior? Philipp Klaus Krause <pkk@spth.de> - 2021-09-21 20:12 +0200
  Re: Why is shifting too far undefined behvaior? Vincent Lefevre <vincent-news@vinc17.net> - 2021-09-22 01:13 +0000
  Re: Why is shifting too far undefined behvaior? David Brown <david.brown@hesbynett.no> - 2021-09-22 14:25 +0200
    Re: Why is shifting too far undefined behvaior? Vincent Lefevre <vincent-news@vinc17.net> - 2021-09-23 11:17 +0000
  Re: Why is shifting too far undefined behvaior? Tim Rentsch <txr@shamko.com> - 2021-10-09 04:27 -0700

csiph-web