Thread overview
htod and size_t
May 26, 2006
Brad Anderson
May 27, 2006
Lionello Lunesu
May 29, 2006
Walter Bright
May 26, 2006
Hope this is the right place for a htod bug.

The C code:
size_t tds_sys_iconv(iconv_t cd, const char **inbuf, size_t *inbytesleft, char
**outbuf, size_t * outbytesleft);

when being put thru htod as such: D:\dev\c\freetds\include>htod tdsiconv.h -I.

results in an error:
tdsiconv.h(94) : Error: missing ',' between declaration of 'size_t' and
'tds_sys_iconv'

Am I missing something here?

BA
May 27, 2006
Perhaps it doesn't know what size_t is? Either include a header with size_t defined/typedef'd (use -Ipath/to/header) or define size_t on the command line ("-Dsize_t=unsigned long")

L.


May 29, 2006
Brad Anderson wrote:
> Hope this is the right place for a htod bug.
> 
> The C code:
> size_t tds_sys_iconv(iconv_t cd, const char **inbuf, size_t *inbytesleft, char
> **outbuf, size_t * outbytesleft);
> 
> when being put thru htod as such:
> D:\dev\c\freetds\include>htod tdsiconv.h -I.
> 
> results in an error:
> tdsiconv.h(94) : Error: missing ',' between declaration of 'size_t' and
> 'tds_sys_iconv'
> 
> Am I missing something here?

Almost certainly it is because size_t is undefined. htod works just like a C compiler (DMC, to be precise), so the headers need to be supplied to it just like you would to DMC.