public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: patl@cag.lcs.mit.edu (Patrick J. LoPresti)
To: mark@codesourcery.com, gcc@gcc.cygnus.com
Subject: __typealias qualifier (was Re: type based aliasing again)
Date: Thu, 30 Sep 1999 18:02:00 -0000	[thread overview]
Message-ID: <s5g4sgtbpja.fsf_-_@egghead.curl.com> (raw)
Message-ID: <19990930180200.oXsIoxI6AAsPxiqx14Dtsoa2czzAjO4z0C2GnuJiwcw@z> (raw)
In-Reply-To: <19990916122341J.mitchell@codesourcery.com>

>>>>> "mark" == Mark Mitchell <mark@codesourcery.com> writes:

 mark> I'm not convinced we need to provide a "have your cake and eat
 mark> it too" mode where you can get the benefits of the optimization
 mark> without having conforming code.  Even if you go to the troule
 mark> of adding some extra type-qualifiers, attributes, etc.,
 mark> somewhere.

Are you prepared to be convinced, or have you already made up your
mind?

 mark> Especially now that people are providing implementations of
 mark> helpful warnings, it seems fair to say "use
 mark> -fno-strict-aliasing (either because that's the default, or
 mark> otherwise) or else write conforming code".

At least a few users (e.g., Linus) disagree with you.  The code where
`__typealias' is most useful is precisely the most
performance-critical, where the programmer wants to get at memory as
raw bytes.  On a modern machine, you do this with int *, not char *.

 mark> Historically, most of our language extensions have proven
 mark> ill-specified, to have slightly odd behavior, to significantly
 mark> complicate the compiler, etc.  

I would prefer for the `__typealias' proposal to be judged on its own
merits, not on its ethnic group.

Of course, history is a useful guide.  I agree that this extension
needs be well-specified, have well-thought-out behavior, and to have a
benefit which is worth the maintenance cost.  So let's discuss these!

 mark> I'm not commenting on any specific proposal, but it's very,
 mark> very hard to get new language features right.  There tends to
 mark> be a huge maintenance cost.

But we *have* a specific proposal, with a precise spec, a prototype
implementation, and a fair rationale.  Why not debate that proposal,
instead of resorting to general arguments?

 mark> IMO, the last thing we want to do is to make GNU C a dialect
 mark> even more divergent from ANSI/ISO C.

This argues against any new extension whatsoever.  If this is the only
argument against `__typealias' and it turns out to be suffient, you
should probably document somewhere that no new GCC extensions will
ever be accepted.  It would save people's time.

 - Pat

  reply	other threads:[~1999-09-30 18:02 UTC|newest]

Thread overview: 210+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-09-08 19:13 type based aliasing again Mike Stump
1999-09-08 19:31 ` Joe Buck
1999-09-30 18:02   ` Joe Buck
1999-09-09  7:12 ` Marc Espie
1999-09-09 20:35   ` Jeffrey A Law
1999-09-10 12:29     ` Sudish Joseph
1999-09-30 18:02       ` Sudish Joseph
1999-09-30 18:02     ` Jeffrey A Law
1999-09-30 18:02   ` Marc Espie
1999-09-09 23:25 ` Richard Stallman
1999-09-08 18:11   ` Joe Buck
1999-09-08 18:43     ` Mark Mitchell
1999-09-08 19:25       ` Joe Buck
1999-09-08 19:51         ` David Edelsohn
1999-09-30 18:02           ` David Edelsohn
1999-09-30 18:02         ` Joe Buck
1999-09-08 19:44       ` Joe Buck
1999-09-08 20:26         ` Mark Mitchell
1999-09-08 20:43           ` Joe Buck
1999-09-08 21:45             ` Mark Mitchell
1999-09-08 22:04               ` Joe Buck
1999-09-08 22:25                 ` Mark Mitchell
1999-09-30 18:02                   ` Mark Mitchell
1999-09-09  2:08                 ` Jeffrey A Law
1999-09-09 10:51                   ` Joe Buck
1999-09-09 16:51                     ` John Vickers
1999-09-09 17:04                       ` Joe Buck
1999-09-09 17:12                         ` John Vickers
1999-09-30 18:02                           ` John Vickers
1999-09-30 18:02                         ` Joe Buck
1999-09-30 18:02                       ` John Vickers
1999-09-15  2:07                     ` Jeffrey A Law
1999-09-30 18:02                       ` Jeffrey A Law
1999-09-30 18:02                     ` Joe Buck
1999-09-09 23:26                   ` Richard Stallman
1999-09-30 18:02                     ` Richard Stallman
1999-09-09 23:26                   ` Richard Stallman
1999-09-09 23:38                     ` Jeffrey A Law
1999-09-30 18:02                       ` Jeffrey A Law
1999-09-30 18:02                     ` Richard Stallman
1999-09-30 18:02                   ` Jeffrey A Law
1999-09-09 23:25                 ` Richard Stallman
1999-09-10  0:06                   ` Mark Mitchell
1999-09-10  0:13                     ` Joe Buck
1999-09-30 18:02                       ` Joe Buck
1999-09-11  0:17                     ` Richard Stallman
1999-09-30 18:02                       ` Richard Stallman
1999-09-30 18:02                     ` Mark Mitchell
1999-09-30 18:02                   ` Richard Stallman
1999-09-30 18:02                 ` Joe Buck
1999-09-08 23:20               ` Richard Henderson
1999-09-08 23:41                 ` Mark Mitchell
1999-09-08 23:44                   ` Richard Henderson
1999-09-08 23:51                     ` Mark Mitchell
1999-09-30 18:02                       ` Mark Mitchell
1999-09-09  2:45                     ` Jeffrey A Law
1999-09-30 18:02                       ` Jeffrey A Law
1999-09-30 18:02                     ` Richard Henderson
1999-09-30 18:02                   ` Mark Mitchell
1999-09-30 18:02                 ` Richard Henderson
1999-09-30 18:02               ` Mark Mitchell
1999-09-30 18:02             ` Joe Buck
1999-09-08 21:33           ` Joe Buck
1999-09-08 21:56             ` Mark Mitchell
1999-09-30 18:02               ` Mark Mitchell
1999-09-09  1:38             ` Martin v. Loewis
1999-09-30 18:02               ` Martin v. Loewis
1999-09-09 23:25             ` Richard Stallman
1999-09-30 18:02               ` Richard Stallman
1999-09-30 18:02             ` Joe Buck
1999-09-09  2:20           ` Jeffrey A Law
1999-09-09  7:58             ` craig
1999-09-09 10:36               ` Joe Buck
1999-09-09 10:55                 ` Mark Mitchell
1999-09-11  0:15                   ` Richard Stallman
1999-09-30 18:02                     ` Richard Stallman
1999-09-30 18:02                   ` Mark Mitchell
1999-09-09 11:51                 ` craig
1999-09-09 12:45                   ` Joe Buck
1999-09-30 18:02                     ` Joe Buck
1999-09-30 18:02                   ` craig
1999-09-30 18:02                 ` Joe Buck
1999-09-30 18:02               ` craig
1999-09-30 18:02             ` Jeffrey A Law
1999-09-09 23:26           ` Richard Stallman
1999-09-30 18:02             ` Richard Stallman
1999-09-30 18:02           ` Mark Mitchell
1999-09-30 18:02         ` Joe Buck
1999-09-09 23:25       ` Richard Stallman
1999-09-10  0:03         ` Mark Mitchell
1999-09-10  0:23           ` Joe Buck
1999-09-11  0:17             ` Richard Stallman
1999-09-30 18:02               ` Richard Stallman
1999-09-30 18:02             ` Joe Buck
1999-09-11  0:17           ` Richard Stallman
1999-09-30 18:02             ` Richard Stallman
1999-09-30 18:02           ` Mark Mitchell
1999-09-10 14:29         ` Marc Lehmann
1999-09-30 18:02           ` Marc Lehmann
1999-09-15  2:05         ` Jeffrey A Law
1999-09-15  7:55           ` Nick Ing-Simmons
1999-09-30 18:02             ` Nick Ing-Simmons
1999-09-15 23:14           ` Richard Stallman
1999-09-30 18:02             ` Richard Stallman
1999-09-30 18:02           ` Jeffrey A Law
1999-09-30 18:02         ` Richard Stallman
1999-09-30 18:02       ` Mark Mitchell
1999-09-08 20:44     ` Joe Buck
1999-09-30 18:02       ` Joe Buck
1999-09-14  3:04     ` Alexandre Oliva
1999-09-14  5:34       ` Bernd Schmidt
1999-09-14  5:45         ` Alexandre Oliva
1999-09-14  5:52           ` Bernd Schmidt
1999-09-30 18:02             ` Bernd Schmidt
1999-09-21  1:16           ` Rask Ingemann Lambertsen
1999-09-21  2:02             ` Jamie Lokier
1999-09-30 18:02               ` Jamie Lokier
1999-09-30 18:02             ` Rask Ingemann Lambertsen
1999-09-30 18:02           ` Alexandre Oliva
1999-09-14  9:31         ` Andi Kleen
1999-09-30 18:02           ` Andi Kleen
1999-09-30 18:02         ` Bernd Schmidt
1999-09-14 22:22       ` Richard Stallman
1999-09-30 18:02         ` Richard Stallman
1999-09-30 18:02       ` Alexandre Oliva
1999-09-30 18:02     ` Joe Buck
1999-09-10  0:11   ` Joe Buck
1999-09-10  8:43     ` craig
1999-09-10 18:25       ` Jonathan Larmour
1999-09-11  3:50         ` craig
1999-09-30 18:02           ` craig
1999-09-30 18:02         ` Jonathan Larmour
1999-09-11  0:15       ` Richard Stallman
1999-09-11  3:51         ` craig
1999-09-12  0:51           ` Richard Stallman
1999-09-12  8:54             ` craig
1999-09-13  0:47               ` Richard Stallman
1999-09-30 18:02                 ` Richard Stallman
1999-09-30 18:02               ` craig
1999-09-30 18:02             ` Richard Stallman
1999-09-30 18:02           ` craig
1999-09-30 18:02         ` Richard Stallman
1999-09-30 18:02       ` craig
1999-09-11  0:14     ` Richard Stallman
1999-09-11 15:20       ` Mark Mitchell
1999-09-11 18:04         ` David Edelsohn
1999-09-11 18:20           ` Mark Mitchell
1999-09-11 23:40             ` Sudish Joseph
1999-09-30 18:02               ` Sudish Joseph
1999-09-12  8:16             ` Robert Lipe
1999-09-30 18:02               ` Robert Lipe
1999-09-30 18:02             ` Mark Mitchell
1999-09-13  0:47           ` Richard Stallman
1999-09-15  2:06             ` Jeffrey A Law
1999-09-15  8:02               ` Nick Ing-Simmons
1999-09-15  9:20                 ` Jeffrey A Law
1999-09-15  9:31                   ` David Edelsohn
1999-09-15 10:02                     ` craig
1999-09-16 23:13                       ` Richard Stallman
1999-09-17  1:51                         ` craig
1999-09-17 22:16                           ` Richard Stallman
1999-09-30 18:02                             ` Richard Stallman
1999-09-30 18:02                           ` craig
1999-09-30 18:02                         ` Richard Stallman
1999-09-30 18:02                       ` craig
1999-09-30 18:02                     ` David Edelsohn
1999-09-15  9:56                   ` Nick Ing-Simmons
1999-09-15 10:08                     ` craig
1999-09-15 10:48                       ` Nick Ing-Simmons
1999-09-15 14:32                         ` craig
1999-09-30 18:02                           ` craig
1999-09-30 18:02                         ` Nick Ing-Simmons
1999-09-16 10:54                       ` Andi Kleen
1999-09-16 12:08                         ` Joern Rennecke
1999-09-16 12:18                           ` Mark Mitchell
1999-09-17  7:07                             ` patl [this message]
1999-09-17  8:32                               ` __typealias qualifier (was Re: type based aliasing again) Mark Mitchell
1999-09-30 18:02                                 ` Mark Mitchell
1999-09-30 18:02                               ` Patrick J. LoPresti
1999-09-30 18:02                             ` type based aliasing again Mark Mitchell
1999-09-30 18:02                           ` Joern Rennecke
1999-09-16 14:29                         ` craig
1999-09-16 22:19                           ` Andi Kleen
1999-09-30 18:02                             ` Andi Kleen
1999-09-30 18:02                           ` craig
1999-09-30 18:02                         ` Andi Kleen
1999-09-16 23:13                       ` Richard Stallman
1999-09-30 18:02                         ` Richard Stallman
1999-09-30 18:02                       ` craig
1999-09-30 18:02                     ` Nick Ing-Simmons
1999-09-30 18:02                   ` Jeffrey A Law
1999-09-30 18:02                 ` Nick Ing-Simmons
1999-09-15 23:14               ` Richard Stallman
1999-09-30 18:02                 ` Richard Stallman
1999-09-30 18:02               ` Jeffrey A Law
1999-09-30 18:02             ` Richard Stallman
1999-09-30 18:02           ` David Edelsohn
1999-09-12  9:45         ` Jonathan Larmour
1999-09-30 18:02           ` Jonathan Larmour
1999-09-13  0:47         ` Richard Stallman
1999-09-30 18:02           ` Richard Stallman
1999-09-13  4:05         ` Richard Earnshaw
1999-09-15  2:05           ` Jeffrey A Law
1999-09-30 18:02             ` Jeffrey A Law
1999-09-30 18:02           ` Richard Earnshaw
1999-09-30 18:02         ` Mark Mitchell
1999-09-30 18:02       ` Richard Stallman
1999-09-30 18:02     ` Joe Buck
1999-09-30 18:02   ` Richard Stallman
1999-09-30 18:02 ` Mike Stump

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=s5g4sgtbpja.fsf_-_@egghead.curl.com \
    --to=patl@cag.lcs.mit.edu \
    --cc=gcc@gcc.cygnus.com \
    --cc=mark@codesourcery.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).