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


Groups > comp.lang.c > #129573

Re: lvalue types

Newsgroups comp.lang.c
Date 2018-04-21 10:27 -0700
References (20 earlier) <3e0e19ef-eac4-4528-9882-0bd18a18f39f@googlegroups.com> <04a0e8eb-f865-49fd-89fa-9274a1e5c9ac@googlegroups.com> <53a99d45-70aa-4242-b88b-9214770efc88@googlegroups.com> <6aec536c-6547-4615-aa38-b1b873acf6df@googlegroups.com> <916de3ee-e0c7-4e3a-909e-c2f9a8ba91f6@googlegroups.com>
Message-ID <4b0e4b95-e008-4739-9dc5-62f308402bd2@googlegroups.com> (permalink)
Subject Re: lvalue types
From supercat@casperkitty.com

Show all headers | View raw


On Thursday, April 19, 2018 at 4:56:58 PM UTC-5, james...@verizon.net wrote:
> On Thursday, April 19, 2018 at 4:37:38 PM UTC-4, supe...@casperkitty.com wrote:
> > I would hope the authors of gcc would be willing to make such a change,
> > but if an easy change would make gcc compatible without significantly
> > impeding optimizations, ...
> 
> I'm not sure it's an easy change, only that if done properly, it shouldn't have a major impact on the speed of the generated code. That's because cases where 6.5.2.3p6 constrains such optimizations are relatively rare - but determining whether 6.5.2.3p6 constrains such optimizations might be fairly expensive.

The Standard has a few bodges that try to define behaviors in cases where
6.5p7 should but doesn't.  While unrelated structure types aren't likely
to appear together in a union declaration unless at least some code expects
to use type punning, and thus the cost of regarding a union declaration as
a warning that type punning might occur would be relatively slight [cheaper
than the costs of complying with the Effective Type bodge], such recognition
would still merely be a bodge that wouldn't be necessary if the Standard
were to address the fundamental problem with 6.5p7.

Given the pattern of steps [not necessarily within the same function]

    nonCharacterType *p;

    ... do stuff
    p = &aggregate.member;
    ... do more stuff
    ... operate upon *p here and never again
    ... still more stuff in function that used *p

the Committee clearly intended that there be some situations where
the operation upon *p should have defined behavior equivalent to
an operation upon aggregate.member, and there should be some situations
where it should invoke UB.  If the Standard were to say that behavior
is equivalent *except* when code does certain incompatible operations
within "...do more stuff" or "...still more stuff", that would render
the other bodges unnecessary.

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