The following bug has been logged online:
Bug reference: 5812
Logged by: Jean-Baptiste Veslin
Email address: jean-baptiste.veslin@meteo.fr
PostgreSQL version: 9.0.1
Operating system: linux CentOS 5.4
Description: ecpg problem with array of varchar when using dimension
name with length > 12
Details:
When using a variable to give dimension of an array of varchar, ecpg
products a coredump if the the variable name is longer than 12.
Exemple, this doesn't work because length of MAX_COL_IN_IND is 14 :
#define MAX_COL_IN_IND 10 #perhaps in an include file
(...)
EXEC SQL BEGIN DECLARE SECTION;
VARCHAR col_name[MAX_COL_IN_IND][26];
EXEC SQL END DECLARE SECTION;
This problem seems to be because of the static declaration "char dim[14L]"
in ecpg.trailer
I think it wouldn't be very difficult to calculate the dimension of "dim"
dynamically (strlen(dimension) + 2)