Re: ecpg - GRANT bug

Lee Kindness <lkindness@csl.co.uk>

From: Lee Kindness <lkindness@csl.co.uk>
To: Bruce Momjian <pgman@candle.pha.pa.us>
Cc: Lee Kindness <lkindness@csl.co.uk>, Tom Lane <tgl@sss.pgh.pa.us>, pgsql-hackers@postgresql.org, Michael Meskes <meskes@postgresql.org>
Date: 2001-10-16T09:27:42Z
Lists: pgsql-bugs, pgsql-hackers
Lee Kindness writes:
 > Patch below, it changes:
 >  1. A number of mmerror(ET_ERROR) to mmerror(ET_NOTICE), passing on
 >     the (currently) unsupported options to the backend with warning.
 >  2. Standardises warning messages in such cases.
 >  3. Corrects typo in passing of 'CREATE FUNCTION/INOUT' parameter.

And the patch below corrects a pet peeve I have with ecpg, all errors
and warnings are output with a line number one less than reality...

Lee.

*** ./interfaces/ecpg/preproc/preproc.y.orig	Tue Oct 16 10:19:27 2001
--- ./interfaces/ecpg/preproc/preproc.y	Tue Oct 16 10:19:49 2001
***************
*** 36,49 ****
      switch(type)
      {
  	case ET_NOTICE: 
! 		fprintf(stderr, "%s:%d: WARNING: %s\n", input_filename, yylineno, error); 
  		break;
  	case ET_ERROR:
! 		fprintf(stderr, "%s:%d: ERROR: %s\n", input_filename, yylineno, error);
  		ret_value = PARSE_ERROR;
  		break;
  	case ET_FATAL:
! 		fprintf(stderr, "%s:%d: ERROR: %s\n", input_filename, yylineno, error);
  		exit(PARSE_ERROR);
      }
  }
--- 36,52 ----
      switch(type)
      {
  	case ET_NOTICE: 
! 		fprintf(stderr, "%s:%d: WARNING: %s\n", input_filename,
! 			yylineno + 1, error); 
  		break;
  	case ET_ERROR:
! 		fprintf(stderr, "%s:%d: ERROR: %s\n", input_filename,
! 			yylineno + 1, error);
  		ret_value = PARSE_ERROR;
  		break;
  	case ET_FATAL:
! 		fprintf(stderr, "%s:%d: ERROR: %s\n", input_filename,
! 			yylineno + 1, error);
  		exit(PARSE_ERROR);
      }
  }