X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fgldecoder.funcs.t;h=e02c1e815277fca0833a47489ff0aff3e5fe0e74;hb=151c65f1157f3b55d0b794db788b557bbc50ed0c;hp=8d054b0ed85f600398c541a8b6f3e1b5923fe3ce;hpb=49f8063ce156a50d4b3b8c77a1508a21ea2bfe90;p=gldbg.git diff --git a/source/gldecoder.funcs.t b/source/gldecoder.funcs.t index 8d054b0..e02c1e8 100644 --- a/source/gldecoder.funcs.t +++ b/source/gldecoder.funcs.t @@ -1,5 +1,5 @@ # $Id$ -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": @@ -7,10 +7,12 @@ 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: @@ -24,7 +26,7 @@ for p in params: 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) : {