BUG #5762: ecpg
От | Joaquim Salles |
---|---|
Тема | BUG #5762: ecpg |
Дата | |
Msg-id | 201011221541.oAMFf6KA058520@wwwmaster.postgresql.org обсуждение исходный текст |
Ответы |
Re: BUG #5762: ecpg
|
Список | pgsql-bugs |
The following bug has been logged online: Bug reference: 5762 Logged by: Joaquim Salles Email address: joaquimsalles@gmail.com PostgreSQL version: 1.8.3 Operating system: linux - Centos 5.3 Description: ecpg Details: I'm porting a pro * c (oracle) to ecpg. In oracle I have: EXEC SQL BEGIN DECLARE SECTION; typedef struct _SItemInfo { varchar strNome [40 +1]; SItemInfo}; SItemInfo sitem; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT name INTO: FROM sitem delivery; it generates the source and compile c normally. However when I generate in ecpg have: typedef struct {_SItemInfo # Line 509 "/ home / Development / Delivery / gserv.pgc" varchar_strNome_509 struct {int len; char arr [40 + 1];} strNome; SItemInfo}; # Line 511 "/ home / Development / Delivery / gserv.pgc" # Line 513 "/ home / Development / Delivery / gserv.pgc" SItemInfo sitem; / * Exec sql end declare section * / # Line 515 "/ home / Development / Delivery / gserv.pgc" {ECPGdo (__LINE__, 0, 1, NULL, 0, ECPGst_normal "select name from delivery, "ECPGt_EOIT, ECPGt_varchar, & (sItem.strNome), (long) 40 + 1, (long) 1, sizeof (struct varchar_strNome_509) ECPGt_NO_INDICATOR, NULL, 0L, 0L, 0L, ECPGt_EORT);} # Line 518 "/ home / Development / Delivery / gserv.ppc At C code does not exist in the structure sizeof (struct varchar_strNome_509) because she 'and a member of struct SItemInfo in the above case. Workaround: use "char" instead "varchar". Thanks Joaquim Salles
В списке pgsql-bugs по дате отправления: