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


Groups > comp.lang.c > #76561

Re: Objective C

From Ben Bacarisse <ben.usenet@bsb.me.uk>
Newsgroups comp.lang.c
Subject Re: Objective C
Date 2015-11-19 22:13 +0000
Organization A noiseless patient Spider
Message-ID <87bnaptz7w.fsf@bsb.me.uk> (permalink)
References (15 earlier) <7c4f687f-742c-4adb-8639-d8fc95a9b78a@googlegroups.com> <87mvuavm69.fsf@bsb.me.uk> <4f1444ba-a9e9-42bc-9d43-bc29b1a076c2@googlegroups.com> <87r3jmt6ac.fsf@bsb.me.uk> <63c43be8-de88-4f9c-b24c-9566243b0dc3@googlegroups.com>

Show all headers | View raw


supercat@casperkitty.com writes:

> On Thursday, November 19, 2015 at 8:26:03 AM UTC-6, Ben Bacarisse wrote:
>> supercat writes:
>> 
>> > On Wednesday, November 18, 2015 at 6:59:50 PM UTC-6, Ben Bacarisse wrote:
>> >> > When test1 is called from main, what would be the effective
>> >> > type of *fp and
>> >> > *ip?
>> >> 
>> >> They both are accesses to the same object whose declared type is the
>> >> union.
>> >
>> > A pointer to a union type, suitably converted, points to each of its
>> > members (N1256 6.7.2.1 13).
>> 
>> Not sure I see the relevance...
>
>> > Would it be legal to say:
>> >
>> >     union { int i; float f; } flint;
>> >     scanf("%d", &flint.i);
>> >
>> > if nothing ever accessed flint.f?
>> 
>> Yes, it would.  Why do you think it might not be?
>
> I was confused for the longest time by the belief that it was legal, but
> recognizing that it isn't makes things a lot clearer.
>
> Were it not for the provision in N1570 6.5.7 which mentions unions, it would
> be illegal to access union members in any way whatsoever (which obviously
> wouldn't be useful); the only thing which is authorized by that section is
> accessing members of the union through an lvalue of the union type (as would
> be done with "flint.i=123;").  The call to scanf does not cause flint to be
> modified using an lvalue of type "flint"; it causes it to be modified with an
> lvalue of type "int", and in the process illegitimately modifies
> flint.f.

Why would you read it like that?  If that argument were valid, flint.i =
42; would be undefined because flint would be accessed through an lvalue
of type int rather than one with the union type.  Clearly that is not
the intent.  flint.i = 42; is access to an object of type int and it is
done though an lvalue with teh declared type of that object (int).

Now, you can argue that this should be clearer; you can say that more
needs to be said about union, objects and accesses, but there can't be
any doubt that a reading which prevents flint.i = 42 because is
illegitimately modifies flint.f can't be right.

-- 
Ben.

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


Thread

Objective C Alla _ <modelling.data@gmail.com> - 2015-11-10 09:10 -0800
  Re: Objective C "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-11-10 09:16 -0800
  Re: Objective C Richard Heathfield <rjh@cpax.org.uk> - 2015-11-10 17:17 +0000
  Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-10 09:32 -0800
    Re: Objective C Mark Storkamp <mstorkamp@yahoo.com> - 2015-11-10 11:38 -0600
  Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-10 12:36 -0500
    Re: Objective C Alla _ <modelling.data@gmail.com> - 2015-11-10 11:15 -0800
      Re: Objective C Richard Heathfield <rjh@cpax.org.uk> - 2015-11-10 21:51 +0000
        Re: Objective C Alla _ <modelling.data@gmail.com> - 2015-11-10 23:13 -0800
      Re: Objective C supercat@casperkitty.com - 2015-11-13 16:01 -0800
        Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-14 01:07 +0000
          Re: Objective C supercat@casperkitty.com - 2015-11-14 06:26 -0800
            Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-14 22:22 +0000
              Re: Objective C supercat@casperkitty.com - 2015-11-14 15:46 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-15 01:47 +0000
                Re: Objective C BartC <bc@freeuk.com> - 2015-11-15 10:43 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-15 13:19 -0800
            Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 15:43 -0800
            Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-15 23:50 +0100
              Re: Objective C gazelle@shell.xmission.com (Kenny McCormack) - 2015-11-16 00:05 +0000
              Re: Objective C supercat@casperkitty.com - 2015-11-15 19:10 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-16 09:11 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-16 11:57 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-16 20:38 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-16 13:20 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-16 22:28 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-16 15:33 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-16 15:56 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-17 01:43 +0000
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-17 01:21 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-16 18:11 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-16 20:12 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-19 00:59 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-18 22:46 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-19 14:25 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-19 07:58 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-19 22:13 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-19 15:29 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 08:44 -0800
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-17 01:26 +0000
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-16 21:48 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-16 20:27 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-17 13:58 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-17 12:28 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-18 13:00 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-18 12:31 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-18 16:43 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-18 15:57 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-19 19:09 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-19 19:05 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-20 15:00 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-20 15:30 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 17:11 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-22 15:53 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-23 13:51 -0600
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-24 12:00 +0000
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-17 10:26 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-17 06:20 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-17 16:41 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-17 12:08 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-17 16:27 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-17 14:55 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-18 13:59 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-18 13:06 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-24 14:24 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-24 15:11 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-26 17:02 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-27 07:26 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-18 21:56 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 02:17 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-22 07:16 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-26 17:11 -0600
                Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-22 19:09 +0000
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-17 23:28 -0600
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-18 15:33 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-18 23:06 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-19 09:12 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-19 09:25 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-19 21:06 +0100
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-20 13:49 -0800
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-21 05:01 -0600
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-21 05:09 -0600
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-21 03:31 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-21 17:43 -0600
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-21 16:00 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 01:12 -0600
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-27 16:42 +0000
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-27 12:38 -0500
                Re: Objective C supercat@casperkitty.com - 2015-11-27 11:09 -0800
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-21 19:06 -0500
                Re: Objective C supercat@casperkitty.com - 2015-11-21 17:00 -0800
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-22 14:44 +0000
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 01:55 -0600
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-22 00:03 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-22 10:18 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 03:21 -0800
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-22 10:53 -0500
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-22 20:28 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-22 18:52 -0800
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-23 11:58 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-23 15:24 -0800
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-23 09:46 -0500
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-23 08:13 -0800
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-23 12:04 -0500
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-23 11:52 -0600
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 16:05 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-24 09:09 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-12-08 08:48 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-12-08 10:40 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-12-09 12:34 -0800
                Re: Objective C supercat@casperkitty.com - 2015-12-08 10:50 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-12-09 12:42 -0800
                Re: Objective C supercat@casperkitty.com - 2015-12-09 13:38 -0800
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-12-10 19:54 +0000
                Re: Objective C David Thompson <dave.thompson2@verizon.net> - 2015-12-06 08:02 -0500
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-22 14:36 -0800
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-23 00:41 -0600
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 07:39 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-22 14:23 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-17 10:24 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-18 15:40 +0100
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-20 16:02 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-21 15:53 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-21 08:58 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-22 22:14 +0100
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 03:39 -0800
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-23 13:24 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-26 09:39 -0800
                Re: Objective C Robert Wessel <robertwessel2@yahoo.com> - 2015-11-26 13:16 -0600
                Re: Objective C supercat@casperkitty.com - 2015-11-26 12:25 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 14:34 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-26 12:39 -0800
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-27 16:43 +0000
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-27 09:29 -0800
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 14:18 -0800
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-23 22:35 +0000
                Re: Objective C James Kuyper <jameskuyper@verizon.net> - 2015-11-23 17:40 -0500
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-24 05:35 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-25 12:15 -0800
                Re: Objective C glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-11-25 22:49 +0000
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-27 16:44 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 14:03 -0800
                Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-29 09:29 +0000
                Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-22 19:01 +0000
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-23 07:31 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-23 07:43 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-23 08:17 -0800
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-23 17:34 +0100
                Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-23 22:02 +0000
                Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-24 10:12 +0100
                Re: Objective C Tim Rentsch <txr@alumni.caltech.edu> - 2015-11-27 08:39 -0800
          Re: Objective C Jorgen Grahn <grahn+nntp@snipabacken.se> - 2015-11-14 18:24 +0000
        Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 12:23 -0800
          Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-14 12:36 -0800
            Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 13:13 -0800
              Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-14 14:04 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 14:15 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-14 14:29 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-14 15:39 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-14 16:37 -0800
                Re: Objective C Ian Collins <ian-news@hotmail.com> - 2015-11-15 13:46 +1300
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-15 02:06 +0000
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-15 03:25 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-15 12:56 +0000
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-15 07:53 -0600
                Re: Objective C Stephen Sprunk <stephen@sprunk.org> - 2015-11-15 07:19 -0600
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-15 13:29 +0000
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-15 10:56 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-15 14:35 -0800
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-15 16:52 -0800
                Re: Objective C supercat@casperkitty.com - 2015-11-15 19:49 -0800
                Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-16 11:02 +0000
                Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-16 10:36 -0800
                Re: Objective C David Thompson <dave.thompson2@verizon.net> - 2015-12-06 08:03 -0500
                Re: Objective C Melzzzzz <mel@zzzzz.com> - 2015-11-16 02:01 +0100
                Re: Objective C supercat@casperkitty.com - 2015-11-15 19:34 -0800
                Re: Objective C Chad <cdalten@gmail.com> - 2015-11-15 19:54 -0800
                Re: Objective C raltbos@xs4all.nl (Richard Bos) - 2015-11-17 22:36 +0000
                Re: Objective C supercat@casperkitty.com - 2015-11-17 15:27 -0800
                Re: Objective C Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-11-17 21:15 -0800
          Re: Objective C Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-11-14 22:08 +0000
      Re: Objective C fir <profesor.fir@gmail.com> - 2015-11-27 14:36 -0800
  Re: Objective C David Brown <david.brown@hesbynett.no> - 2015-11-10 19:03 +0100
    Re: Objective C Keith Thompson <kst-u@mib.org> - 2015-11-10 10:50 -0800

csiph-web