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


Groups > comp.lang.c > #129299

Re: lvalue types

From Keith Thompson <kst-u@mib.org>
Newsgroups comp.lang.c
Subject Re: lvalue types
Date 2018-04-16 19:42 -0700
Organization None to speak of
Message-ID <ln8t9mmu4d.fsf@kst-u.example.com> (permalink)
References (13 earlier) <a4ad0855-8098-4bb3-b499-ca1ca457df99@googlegroups.com> <83589df8-fa61-4ffb-8fef-09ab50c8fcf4@googlegroups.com> <b9ba615a-a637-4c93-bd44-3f42d2578b2c@googlegroups.com> <646ca446-53a3-4006-a476-6f52caacd8c9@googlegroups.com> <uqcBC.238$o43.209@fx33.iad>

Show all headers | View raw


Richard Damon <Richard@Damon-Family.org> writes:
> On 4/16/18 7:22 PM, supercat@casperkitty.com wrote:
>> That is *generally* true, but there are some notable exceptions such as
>> 6.5p7.  That paragraph primarily affects programs whose meaning would
>> otherwise be unambiguously implied by implementations' specified storage
>> formats.
>
> An you don't seem to understand that what this paragraph says (as
> supported by the footnote) that this limitation defines what the
> Standard enforces on an implementation. NOTHING in this statement says
> that an implementation can't define other conditions or methods of
> accesses and how they behave.
>
> Yes, this does say that, absent promises by the implementation, that a
> naive expectation of what seems 'natural' for a processor will behave
> the way you want if you don't follow those rules. Every implementation
> that I know of allows for ways to tell the compiler "I'm playing tricks
> here, please act 'dumb' and do just what I am saying".
>
> Yes, this says you DO need to read and understand the documentation (and
> if still not sure ASK the implementer) to do this sort of trick.

Except that *if* I'm reading 6.5p7 correctly (as it's written, as
opposed to as it was almost certainly intended), then the behavior
of `obj.m = 42;` is explicitly undefined, because it accesses the
struct object `obj` by the value `obj.m`, which has type int.

I have no doubt that the intent was for `obj.m = 42;` to be well
defined, modifying the value of obj.m and therefore the value of obj.
The modification of obj is not (intended to be) undefined behavior
that every implementation happens to sensibly implement in the
same way.  It's behavior that is intended to be well defined, with
no wiggle room, but the standard failed to specify it correctly.
(Assume if you like that "obj" is a struct whose only member is
"m", of type int, that obj has no padding bytes, and that int has
no padding bits or trap representations.)

(Yes, Tim, I'm still planning to respond to your earlier posts.)

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
Working, but not speaking, for JetHead Development, Inc.
"We must do something.  This is something.  Therefore, we must do this."
    -- Antony Jay and Jonathan Lynn, "Yes Minister"

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


Thread

lvalue types supercat@casperkitty.com - 2018-03-01 16:38 -0800
  Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-01 17:17 -0800
  Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-01 17:37 -0800
    Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-01 22:00 -0800
    Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-01 23:49 -0800
      Re: lvalue types asetofsymbols@gmail.com - 2018-03-05 06:56 -0800
    Re: lvalue types supercat@casperkitty.com - 2018-03-02 00:22 -0800
      Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-02 01:23 -0800
      Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-02 05:04 -0800
        Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-02 06:06 -0800
          Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-02 08:12 -0800
      Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-02 09:50 -0800
        Re: lvalue types supercat@casperkitty.com - 2018-03-02 11:33 -0800
          Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-02 11:45 -0800
            Re: lvalue types supercat@casperkitty.com - 2018-03-02 16:28 -0800
              Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-02 16:54 -0800
                Re: lvalue types supercat@casperkitty.com - 2018-03-02 17:50 -0800
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-02 19:43 -0800
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-03-02 22:51 -0800
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-02 23:07 -0800
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-03 01:44 -0800
                Re: lvalue types supercat@casperkitty.com - 2018-03-03 13:01 -0800
          Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-02 22:21 -0800
    Re: lvalue types supercat@casperkitty.com - 2018-03-02 09:24 -0800
    Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-03-03 00:58 -0800
      Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-03 01:13 -0800
      Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-03 13:01 -0800
        Re: lvalue types supercat <flatfinger@casperkitty.com> - 2018-03-03 17:43 -0800
        Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-03-04 02:22 -0800
          Re: lvalue types supercat@casperkitty.com - 2018-03-04 13:03 -0800
          Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-04 13:03 -0800
            Re: lvalue types bartc <bc@freeuk.com> - 2018-03-04 22:32 +0000
            Re: lvalue types supercat@casperkitty.com - 2018-03-05 09:45 -0800
            Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-03-19 09:54 -0700
              Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-19 11:52 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-03-26 23:44 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-27 09:14 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-03-27 12:21 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-28 17:01 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-29 01:54 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-03-30 08:32 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-30 09:25 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-03-30 10:58 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-31 00:52 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-02 15:19 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-03 10:06 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-03 11:33 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-03 12:19 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-03 12:48 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-05 10:17 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-05 10:52 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-05 12:39 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-06 06:13 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-04 16:38 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-03-27 12:09 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-28 10:48 -0700
              Re: lvalue types supercat@casperkitty.com - 2018-03-19 12:27 -0700
          Re: lvalue types jameskuyper@verizon.net - 2018-04-03 14:02 -0700
            Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-04 17:32 -0700
              Re: lvalue types jameskuyper@verizon.net - 2018-04-04 20:24 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-09 08:31 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-11 11:19 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-11 12:44 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-12 06:45 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-12 07:54 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-12 14:26 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-12 14:43 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-12 17:40 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-13 03:02 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-13 00:27 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-13 07:19 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-16 08:52 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-16 10:28 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-16 13:58 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-16 14:52 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-16 16:22 -0700
                Re: lvalue types Richard Damon <Richard@Damon-Family.org> - 2018-04-16 21:51 -0400
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-16 19:42 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-16 21:30 -0700
                Re: lvalue types Richard Damon <Richard@Damon-Family.org> - 2018-04-17 07:01 -0400
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-17 04:22 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-19 02:43 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-17 07:25 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-17 08:48 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-17 09:54 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-17 10:37 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-17 11:00 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-17 11:48 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-17 12:45 -0700
                Re: lvalue types scott@slp53.sl.home (Scott Lurndal) - 2018-04-17 19:55 +0000
                Re: lvalue types jameskuyper@verizon.net - 2018-04-17 13:13 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-17 14:00 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-17 19:45 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 08:27 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-18 09:12 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 10:13 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-18 11:01 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-18 11:51 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 12:15 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-18 12:30 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 13:25 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-19 10:51 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-18 12:38 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 14:39 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-18 21:17 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-19 02:40 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-19 03:01 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-19 06:49 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-19 07:58 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-20 08:19 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-19 12:17 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-19 12:51 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-19 13:37 -0700
                Re: lvalue types scott@slp53.sl.home (Scott Lurndal) - 2018-04-19 21:08 +0000
                Re: lvalue types supercat@casperkitty.com - 2018-04-19 14:50 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-19 14:56 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-19 16:13 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-21 10:27 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-23 11:37 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-18 16:07 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-18 09:20 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 11:25 -0700
                Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-04-17 14:13 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-17 15:05 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-17 19:57 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 08:43 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-18 09:36 -0700
                Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-17 11:37 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-17 20:23 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 09:23 -0700
                Re: lvalue types scott@slp53.sl.home (Scott Lurndal) - 2018-04-18 17:29 +0000
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 10:47 -0700
                Re: lvalue types bartc <bc@freeuk.com> - 2018-04-18 20:04 +0100
                Re: lvalue types jameskuyper@verizon.net - 2018-04-18 10:48 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 13:23 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-18 14:26 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-18 15:36 -0700
                Re: lvalue types jameskuyper@verizon.net - 2018-04-19 10:39 -0700
                Re: lvalue types supercat@casperkitty.com - 2018-04-19 12:42 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-16 21:29 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-04-23 11:39 -0700
                Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-06-14 02:53 -0700
              Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-04-04 21:30 -0700
      Re: lvalue types supercat@casperkitty.com - 2018-03-03 14:19 -0800
  Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-01 18:03 -0800
  Re: lvalue types John Bode <jfbode1029@gmail.com> - 2018-03-21 10:33 -0700
    Re: lvalue types Keith Thompson <kst-u@mib.org> - 2018-03-21 11:53 -0700
      Re: lvalue types Steven Petruzzellis <frelwizzen@gmail.com> - 2018-03-22 00:11 -0700
    Re: lvalue types supercat@casperkitty.com - 2018-03-21 11:53 -0700
    Re: lvalue types Tim Rentsch <txr@alumni.caltech.edu> - 2018-03-26 23:04 -0700

csiph-web