From: Stefan Behnel Date: Mon, 1 Sep 2008 10:08:00 +0000 (+0200) Subject: work-around for C/C++ compiler warnings X-Git-Tag: 0.9.9.2.beta~63^2~17 X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=1749d8050f71a11021fa88ed9390992a7ca4c18b;p=cython.git work-around for C/C++ compiler warnings --- diff --git a/Cython/Compiler/Nodes.py b/Cython/Compiler/Nodes.py index ae1552d3..def2e025 100644 --- a/Cython/Compiler/Nodes.py +++ b/Cython/Compiler/Nodes.py @@ -3778,6 +3778,11 @@ class TryFinallyStatNode(StatNode): "PyObject *%s, *%s, *%s;" % Naming.exc_vars) code.putln( "int %s;" % Naming.exc_lineno_name) + exc_var_init_zero = ''.join(["%s = 0; " % var for var in Naming.exc_vars]) + exc_var_init_zero += '%s = 0;' % Naming.exc_lineno_name + code.putln(exc_var_init_zero) + else: + exc_var_init_zero = None code.use_label(catch_label) code.putln( "__pyx_why = 0; goto %s;" % catch_label) @@ -3788,9 +3793,10 @@ class TryFinallyStatNode(StatNode): self.put_error_catcher(code, new_error_label, i+1, catch_label) else: - code.putln( - "%s: __pyx_why = %s; goto %s;" % ( - new_label, + code.put('%s: ' % new_label) + if exc_var_init_zero: + code.putln(exc_var_init_zero) + code.putln("__pyx_why = %s; goto %s;" % ( i+1, catch_label)) code.put_label(catch_label)