pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Zdenek Kotala <Zdenek.Kotala@Sun.COM>
To: Michael Meskes <meskes@postgresql.org>
Cc: pgsql-hackers@postgresql.org <pgsql-hackers@postgresql.org>
Subject: Re: Compiler warning cleanup - unitilized const variables, pointer type mismatch
Date: Thu, 28 May 2009 13:51:07 +0200
Message-ID: <1243511467.1372.43.camel@localhost> (raw)
In-Reply-To: <20090528113347.GB9247@feivel.credativ.lan>
References: <1243501880.1372.23.camel@localhost>
	<20090528113347.GB9247@feivel.credativ.lan>


Michael Meskes píše v čt 28. 05. 2009 v 13:33 +0200:
> On Thu, May 28, 2009 at 11:11:20AM +0200, Zdenek Kotala wrote:
> > I attached another cleanup patch which fixes following warnings reported
> > by Sun Studio:
> > ...
> > "preproc.c", line 39569: warning: pointer expression or its operand do not point to the same object yyerror_range, result is undefined and non-portable 
> > ...
> > Following list is still unfixed plus see my comments:
> > 
> > "gram.c", line 28487: warning: pointer expression or its operand do not point to the same object yyerror_range, result is undefined and non-portable 
> > ...
> 
> These two should be the same, both coming from bison. Both files are
> auto-generated, thus it might be bison that has to be fixed to remove this
> warning. 

yeah it is generated, but question is if generated code is valid or it
is bug in bison. If it bison bug we need to care about it. There is the
code:

  yyerror_range[1] = yylloc;
  /* Using YYLLOC is tempting, but would change the location of
     the look-ahead.  YYLOC is available though.  */
  YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2);
  *++yylsp = yyloc;

Problem is with YYLLOC_DEFAULT. When I look on macro definition 

#define YYLLOC_DEFAULT(Current, Rhs, N)          \
  Current.first_line   = Rhs[1].first_line;      \
  Current.first_column = Rhs[1].first_column;    \
  Current.last_line    = Rhs[N].last_line;       \
  Current.last_column  = Rhs[N].last_column;

It seems to me that it is OK, because 1 is used as a index which finally
point on yyerror_range[0]. 


> Given that I didn't find any mentioning of preproc in your patch I
> suppose it just hit the wrong list though.

I'm sorry copy paste error. Yeah, I did not fix preproc too.

		Zdenek





view thread (10+ messages)  latest in thread

Message-ID: <1243511467.1372.43.camel@localhost>
Permalink:  ../1243511467.1372.43.camel@localhost/
Also on:    postgresql.org/message-id/1243511467.1372.43.camel@localhost

 · 

reply

Reply instructions:

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

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: Zdenek.Kotala@Sun.COM, meskes@postgresql.org
  Subject: Re: Compiler warning cleanup - unitilized const variables, pointer type mismatch
  In-Reply-To: <1243511467.1372.43.camel@localhost>

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

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox