Re: Version 1 Calling convention

Поиск
Список
Период
Сортировка
От Jasbinder Bali
Тема Re: Version 1 Calling convention
Дата
Msg-id a47902760608300238o6f6415b6wce64b472c7acd068@mail.gmail.com
обсуждение исходный текст
Ответ на Version 1 Calling convention  ("Jasbinder Bali" <jsbali@gmail.com>)
Ответы Re: Version 1 Calling convention  (Martijn van Oosterhout <kleptog@svana.org>)
Список pgsql-general
PG_FUNCTION_INFO_V1 (test);

Datum
test (PG_FUNCTION_ARGS)
{
           int id = PG_GETARG_INT(0);
           char *raw_rawemail1 = PG_GETARG_CHAR_P(1); //line 6 (warning thrown for this line)
           char *rawemail1 = (char *)  palloc (VARSIZE(rawemail1));
           VARATT_SIZEP ( rawemail1 ) = VARSIZE (raw_rawemail1); //LINE 140 (thats where i get syntax error)
           memcpy( (void *) (VARDATA) (rawemail1), (void *) (VARDATA) (raw_rawemail1) , (VARSIZE) (raw_rawemail1) - VARHDRSZ );

}

Was trying to test the code given in the postgres manual.
The only diff being that i changed the data type from text* to char* and it gives me a warning like:

"initialization makes pointer from integer without a cast" at line 6 as commented above.

Can any1 point why?

~Jas
Compiling this code gives me the follwoing error:


Compiling this code throws the follwoing error
On 8/30/06, Jasbinder Bali <jsbali@gmail.com> wrote:
I have a .pgc file and i have the following code snippet in it:

PG_FUNCTION_INFO_V1 (test);

Datum
test (PG_FUNCTION_ARGS)
{
  EXEC SQL BEGIN DECLARE SECTION;
           int id = PG_GETARG_INT(0);
           char *raw_rawemail1 = PG_GETARG_CHAR_P(1);
           char *rawemail1 = (char *)  palloc (VARSIZE(rawemail1));
           VARATT_SIZEP ( rawemail1 ) = VARSIZE (raw_rawemail1); //LINE 140 (thats where i get syntax error)
           memcpy( (void *) (VARDATA) (rawemail1), (void *) (VARDATA) (raw_rawemail1) , (VARSIZE) (raw_rawemail1) - VARHDRSZ );
  EXEC SQL END DECLARE SECTION;

  EXEC SQL CONNECT TO dbxyz;
}

When I compile this using
ECPG parser.pgc

I get the follwing error

Syntax error at or near 'rawemail1' (LINE 140 marked above)

Don't know what this error is all about.
Don't know if my declaration in BEGIN END block is correct in the pgc file for version 1 calling convention

Thanks
~Jas

В списке pgsql-general по дате отправления:

Предыдущее
От: Devrim GUNDUZ
Дата:
Сообщение: Status on Fedora Core Extras packaging
Следующее
От: "Post Gres"
Дата:
Сообщение: Query for order of tables