From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29367 invoked by alias); 29 Sep 2002 20:01:58 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 29360 invoked from network); 29 Sep 2002 20:01:57 -0000 Received: from unknown (HELO mtvmime02.veritas.com) (143.127.3.10) by sources.redhat.com with SMTP; 29 Sep 2002 20:01:57 -0000 Received: from megami (unverified) by mtvmime02.veritas.com (Content Technologies SMTPRS 4.2.10) with SMTP id ; Sun, 29 Sep 2002 13:02:05 -0700 Received: from pacbell.net([172.22.12.210]) (1842 bytes) by megami via sendmail with P:esmtp/R:smart_host/T:smtp (sender: ) id for ; Sun, 29 Sep 2002 13:01:57 -0700 (PDT) (Smail-3.2.0.101 1997-Dec-17 #15 built 2001-Aug-30) Message-ID: <3D975D4A.4D845589@pacbell.net> Date: Sun, 29 Sep 2002 13:08:00 -0000 From: Bruce Korb Organization: Home X-Accept-Language: en MIME-Version: 1.0 To: Daniel Jacobowitz CC: Gabriel Dos Reis , Robert Dewar , zack@codesourcery.com, gcc@gcc.gnu.org Subject: Re: module level flags References: <20020929094132.3E262F2D68@nile.gnat.com> <3D972FFC.641F4F46@pacbell.net> <3D9736C8.1C4ACF76@pacbell.net> <20020929195837.GA6173@nevyn.them.org> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-SW-Source: 2002-09/txt/msg01210.txt.bz2 Daniel Jacobowitz wrote: > > On Sun, Sep 29, 2002 at 10:22:16AM -0700, Bruce Korb wrote: > > Gabriel Dos Reis wrote: > > > | If the standard says otherwise, then this construct: > > > | > > > | (mumble*)&stumble > > > | > > > | where 'stumble' is not of type 'mumble' must be deemed a > > > | hard error. > > > > > > Not necessarily. The C abstract machine has a notion of "effective > > > type" and "compatible type". > > > > By golly, YYSTYPE darn well better be compatible with > > arbitrary pointers or there are real problems. > > What is a YYSTYPE? A union pointer? A char *? If it's a char *, as > the language suggests it should be, then you're OK. If it's a union* > you should be accessing the appropriate union member, not casting. YYSTYPE is a bucket designed by YACC (Bison) to carry either a pointer (of any sort) or a scalar.