X-Git-Url: http://git.demorecorder.com/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fc_client.py;h=99fe11481191fb559a8f4853cd643b23da7ba787;hb=cebd482a20fcc2b2dae0683c38e917a3740638a6;hp=db974e09f13464e75be8f36b3291db8b20ab2981;hpb=7e0674e76186ee4491a089350511fc0d22fb3af3;p=free-sw%2Fxcb%2Flibxcb diff --git a/src/c_client.py b/src/c_client.py index db974e0..99fe114 100755 --- a/src/c_client.py +++ b/src/c_client.py @@ -176,6 +176,12 @@ def c_open(self): for (n, h) in self.imports: _hc('#include "%s.h"', h) + _h('') + _h('#ifdef __cplusplus') + _h('extern "C" {') + _h('#endif') + + if _ns.is_ext: _h('') _h('#define XCB_%s_MAJOR_VERSION %s', _ns.ext_name.upper(), _ns.major_version) _h('#define XCB_%s_MINOR_VERSION %s', _ns.ext_name.upper(), _ns.minor_version) @@ -193,6 +199,12 @@ def c_close(self): _h_setlevel(2) _c_setlevel(2) _hc('') + + _h('') + _h('#ifdef __cplusplus') + _h('}') + _h('#endif') + _h('') _h('#endif') _h('') @@ -640,7 +652,7 @@ def _c_complex(self): if not field.type.fixed_size(): varfield = field.c_field_name continue - if varfield != None and not field.type.is_pad: + if varfield != None and not field.type.is_pad and field.wire: errmsg = '%s: warning: variable field %s followed by fixed field %s\n' % (self.c_type, varfield, field.c_field_name) sys.stderr.write(errmsg) # sys.exit(1)