[Python-checkins] cpython: Initialize variables to prevent GCC warnings

victor.stinner python-checkins at python.org
Wed Mar 18 16:06:11 CET 2015


https://hg.python.org/cpython/rev/5c09cf26b930
changeset: 95044:5c09cf26b930
user: Victor Stinner <victor.stinner at gmail.com>
date: Wed Mar 18 15:02:06 2015 +0100
summary:
 Initialize variables to prevent GCC warnings
files:
 Objects/unicodeobject.c | 35 ++++++++++++++++------------
 Python/ast.c | 6 +++-
 Python/bltinmodule.c | 2 +-
 3 files changed, 25 insertions(+), 18 deletions(-)
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -3469,7 +3469,8 @@
 int surrogateescape;
 size_t error_pos;
 char *errmsg;
- PyObject *reason, *exc;
+ PyObject *reason = NULL; /* initialize to prevent gcc warning */
+ PyObject *exc;
 
 if (locale_error_handler(errors, &surrogateescape) < 0)
 return NULL;
@@ -9454,7 +9455,7 @@
 {
 Py_ssize_t j;
 int final_sigma;
- Py_UCS4 c;
+ Py_UCS4 c = 0; /* initialize to prevent gcc warning */
 /* U+03A3 is in the Final_Sigma context when, it is found like this:
 
 \p{cased}\p{case-ignorable}*U+03A3!(\p{case-ignorable}*\p{cased})
@@ -11124,7 +11125,7 @@
 static PyObject *
 unicode_count(PyObject *self, PyObject *args)
 {
- PyObject *substring;
+ PyObject *substring = NULL; /* initialize to fix a compiler warning */
 Py_ssize_t start = 0;
 Py_ssize_t end = PY_SSIZE_T_MAX;
 PyObject *result;
@@ -11312,9 +11313,10 @@
 static PyObject *
 unicode_find(PyObject *self, PyObject *args)
 {
- PyObject *substring;
- Py_ssize_t start;
- Py_ssize_t end;
+ /* initialize variables to prevent gcc warning */
+ PyObject *substring = NULL;
+ Py_ssize_t start = 0;
+ Py_ssize_t end = 0;
 Py_ssize_t result;
 
 if (!stringlib_parse_args_finds_unicode("find", args, &substring,
@@ -11399,10 +11401,11 @@
 static PyObject *
 unicode_index(PyObject *self, PyObject *args)
 {
+ /* initialize variables to prevent gcc warning */
 Py_ssize_t result;
- PyObject *substring;
- Py_ssize_t start;
- Py_ssize_t end;
+ PyObject *substring = NULL;
+ Py_ssize_t start = 0;
+ Py_ssize_t end = 0;
 
 if (!stringlib_parse_args_finds_unicode("index", args, &substring,
 &start, &end))
@@ -12477,9 +12480,10 @@
 static PyObject *
 unicode_rfind(PyObject *self, PyObject *args)
 {
- PyObject *substring;
- Py_ssize_t start;
- Py_ssize_t end;
+ /* initialize variables to prevent gcc warning */
+ PyObject *substring = NULL;
+ Py_ssize_t start = 0;
+ Py_ssize_t end = 0;
 Py_ssize_t result;
 
 if (!stringlib_parse_args_finds_unicode("rfind", args, &substring,
@@ -12513,9 +12517,10 @@
 static PyObject *
 unicode_rindex(PyObject *self, PyObject *args)
 {
- PyObject *substring;
- Py_ssize_t start;
- Py_ssize_t end;
+ /* initialize variables to prevent gcc warning */
+ PyObject *substring = NULL;
+ Py_ssize_t start = 0;
+ Py_ssize_t end = 0;
 Py_ssize_t result;
 
 if (!stringlib_parse_args_finds_unicode("rindex", args, &substring,
diff --git a/Python/ast.c b/Python/ast.c
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -115,7 +115,7 @@
 }
 if (!validate_args(args->kwonlyargs))
 return 0;
- if (args->kwarg && args->kwarg->annotation 
+ if (args->kwarg && args->kwarg->annotation
 && !validate_expr(args->kwarg->annotation, Load)) {
 return 0;
 }
@@ -164,6 +164,8 @@
 return 0;
 }
 check_ctx = 0;
+ /* set actual_ctx to prevent gcc warning */
+ actual_ctx = 0;
 }
 if (check_ctx && actual_ctx != ctx) {
 PyErr_Format(PyExc_ValueError, "expression must have %s context but has %s instead",
@@ -451,7 +453,7 @@
 "None disallowed in expression list");
 return 0;
 }
- 
+
 }
 return 1;
 }
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -53,7 +53,7 @@
 PyObject *func, *name, *bases, *mkw, *meta, *winner, *prep, *ns, *cell;
 PyObject *cls = NULL;
 Py_ssize_t nargs;
- int isclass;
+ int isclass = 0; /* initialize to prevent gcc warning */
 
 assert(args != NULL);
 if (!PyTuple_Check(args)) {
-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /