Commit 656fe693 authored by Jack Jansen's avatar Jack Jansen

Generate prototype-style function headers in stead of K&R style. Makes life...

Generate prototype-style function headers in stead of K&R style. Makes life easier with gcc -Wstrict-function-prototypes.
parent 25e0c794
...@@ -37,12 +37,8 @@ class BaseFunctionGenerator: ...@@ -37,12 +37,8 @@ class BaseFunctionGenerator:
def functionheader(self): def functionheader(self):
Output() Output()
Output("static PyObject *%s_%s(_self, _args)", Output("static PyObject *%s_%s(%s *_self, PyObject *_args)",
self.prefix, self.name) self.prefix, self.name, self.objecttype)
IndentLevel()
Output("%s *_self;", self.objecttype)
Output("PyObject *_args;")
DedentLevel()
OutLbrace() OutLbrace()
Output("PyObject *_res = NULL;") Output("PyObject *_res = NULL;")
......
...@@ -38,7 +38,7 @@ class Module(GeneratorGroup): ...@@ -38,7 +38,7 @@ class Module(GeneratorGroup):
Output("%s", self.finalstuff) Output("%s", self.finalstuff)
Output() Output()
Output("void init%s()", self.name) Output("void init%s(void)", self.name)
OutLbrace() OutLbrace()
Output("PyObject *m;") Output("PyObject *m;")
Output("PyObject *d;") Output("PyObject *d;")
......
...@@ -80,10 +80,8 @@ class ObjectDefinition(GeneratorGroup): ...@@ -80,10 +80,8 @@ class ObjectDefinition(GeneratorGroup):
def outputNew(self): def outputNew(self):
Output() Output()
Output("%sPyObject *%s_New(itself)", self.static, self.prefix) Output("%sPyObject *%s_New(%s %sitself)", self.static, self.prefix,
IndentLevel() self.itselftype, self.argref)
Output("%s %sitself;", self.itselftype, self.argref)
DedentLevel()
OutLbrace() OutLbrace()
Output("%s *it;", self.objecttype) Output("%s *it;", self.objecttype)
self.outputCheckNewArg() self.outputCheckNewArg()
...@@ -100,11 +98,8 @@ class ObjectDefinition(GeneratorGroup): ...@@ -100,11 +98,8 @@ class ObjectDefinition(GeneratorGroup):
"Override this method to apply additional checks/conversions" "Override this method to apply additional checks/conversions"
def outputConvert(self): def outputConvert(self):
Output("%s%s_Convert(v, p_itself)", self.static, self.prefix) Output("%s%s_Convert(PyObject *v, %s *p_itself)", self.static, self.prefix,
IndentLevel() self.itselftype)
Output("PyObject *v;")
Output("%s *p_itself;", self.itselftype)
DedentLevel()
OutLbrace() OutLbrace()
self.outputCheckConvertArg() self.outputCheckConvertArg()
Output("if (!%s_Check(v))", self.prefix) Output("if (!%s_Check(v))", self.prefix)
...@@ -121,10 +116,7 @@ class ObjectDefinition(GeneratorGroup): ...@@ -121,10 +116,7 @@ class ObjectDefinition(GeneratorGroup):
def outputDealloc(self): def outputDealloc(self):
Output() Output()
Output("static void %s_dealloc(self)", self.prefix) Output("static void %s_dealloc(%s *self)", self.prefix, self.objecttype)
IndentLevel()
Output("%s *self;", self.objecttype)
DedentLevel()
OutLbrace() OutLbrace()
self.outputCleanupStructMembers() self.outputCleanupStructMembers()
Output("PyMem_DEL(self);") Output("PyMem_DEL(self);")
...@@ -138,11 +130,7 @@ class ObjectDefinition(GeneratorGroup): ...@@ -138,11 +130,7 @@ class ObjectDefinition(GeneratorGroup):
def outputGetattr(self): def outputGetattr(self):
Output() Output()
Output("static PyObject *%s_getattr(self, name)", self.prefix) Output("static PyObject *%s_getattr(%s *self, char *name)", self.prefix, self.objecttype)
IndentLevel()
Output("%s *self;", self.objecttype)
Output("char *name;")
DedentLevel()
OutLbrace() OutLbrace()
self.outputGetattrBody() self.outputGetattrBody()
OutRbrace() OutRbrace()
...@@ -226,10 +214,8 @@ class ObjectIdentityMixin: ...@@ -226,10 +214,8 @@ class ObjectIdentityMixin:
def outputCompare(self): def outputCompare(self):
Output() Output()
Output("static int %s_compare(self, other)", self.prefix) Output("static int %s_compare(%s *self, %s *other)", self.prefix, self.objecttype,
IndentLevel() self.objecttype)
Output("%s *self, *other;", self.objecttype)
DedentLevel()
OutLbrace() OutLbrace()
Output("unsigned long v, w;") Output("unsigned long v, w;")
Output() Output()
...@@ -250,10 +236,7 @@ class ObjectIdentityMixin: ...@@ -250,10 +236,7 @@ class ObjectIdentityMixin:
def outputHash(self): def outputHash(self):
Output() Output()
Output("static long %s_hash(self)", self.prefix) Output("static long %s_hash(%s *self)", self.prefix, self.objecttype)
IndentLevel()
Output("%s *self;", self.objecttype)
DedentLevel()
OutLbrace() OutLbrace()
Output("return (long)self->ob_itself;") Output("return (long)self->ob_itself;")
OutRbrace() OutRbrace()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment