# $Id$
-^typemap gl.tm
-^iomap gl.io
-^spec gl gl.spec
-wl('static unsigned decode_%s(GlDecoder *dec, const char *data)', func.name)
+wl('static unsigned decode_%s(GlDecoder *dec, const char *data __attribute__((unused)))', func.name)
wl('{')
wl(' unsigned pos = 0;')
if ret.ctype!="void":
for p in params:
wl(' %s p_%s;', p.ctype, p.name)
if ret.ctype!="void":
- wl(' pos += read_%s(&ret, data+pos);', ret.io[0])
+ wl(' pos += read_%s((%s *)&ret, data+pos);', ret.io[0].replace(' ', '_'), ret.io[0])
for p in params:
if p.kind=="value":
- wl(' pos += read_%s(&p_%s, data+pos);', p.io[0], p.name)
+ wl(' pos += read_%s((%s *)&p_%s, data+pos);', p.io[0].replace(' ', '_'), p.io[0], p.name)
+ elif p.kind=="array" and p.io and p.io[0]=="string":
+ wl(' pos += read_string_array(&p_%s, data+pos);', p.name)
elif p.csize:
wl(' pos += read_data((const void **)&p_%s, data+pos);', p.name)
else:
wl(');')
wl(' return pos;')
wl('}')
-:static int decode_func(GlDecoder *dec, short func, const char *data)
+:static int decode_func(GlDecoder *dec, unsigned short func, const char *data)
:{
: switch(func)
: {