Hello 2011/4/21 Nick Raj <nickrajj...@gmail.com>: > Hi, > I am defining a new data type called mpoint > i.e. > typedef struct mpoint > { > Point p; > Timestamp t; > } mpoint; > > For defining input/output function > > 1 Datum mpoint_in(PG_FUNCTION_ARGS) > 2 { > 3 > 4 mpoint *result; > 5 char *pnt=(char *)malloc (sizeof (20)); > 6 char *ts=(char *)malloc (sizeof (20)); > 7 result= (mpoint *) palloc(sizeof(mpoint)); > 8 char *st = PG_GETARG_CSTRING(0); > 9 mpoint_decode(st,pnt,ts); > // st breaks down into pnt that corresponds to Point and ts corresponds to > Timestamp > 10 > 11 result->p = point_in(PointerGetDatum(pnt)); // > point_in (input function for point that assigns x, y into point) > 12 result-> t = timestamp_in(PointerGetDatum(ts)); // similar > for timestamp > 13 > 14 PG_RETURN_MPOINT_P(result); > 15 } > > line no 11 warning: passing argument 1 of ‘point_in’ makes pointer from > integer without a cast > ../../../include/utils/geo_decls.h:191: note: expected > ‘FunctionCallInfo’ but argument is of type ‘unsigned int’ > line no 11 error: incompatible types when assigning to type ‘Point’ from > type ‘Datum’ > line no 12 warning: passing argument 1 of ‘timestamp_in’ makes pointer from > integer without a cast > ../../../include/utils/timestamp.h:205: note: expected > ‘FunctionCallInfo’ but argument is of type ‘unsigned int’ >
you are missing a important header files. > Can anybody figure out what kind of mistake i am doing? > Also, why it got related to 'FunctionCallInfo' ? see on definition of PG_FUNCTION_ARGS macro Regards Pavel Stehule > > Thanks > Nick > -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers