summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Objects/unicodeobject.c35
-rw-r--r--Python/ast.c6
-rw-r--r--Python/bltinmodule.c2
3 files changed, 25 insertions, 18 deletions
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index 0dea83e505..ab22289f50 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -3469,7 +3469,8 @@ PyUnicode_DecodeLocaleAndSize(const char *str, Py_ssize_t len,
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 @@ handle_capital_sigma(int kind, void *data, Py_ssize_t length, Py_ssize_t i)
{
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 @@ interpreted as in slice notation.");
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 @@ Return -1 on failure.");
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 @@ Like S.find() but raise ValueError when the substring is not found.");
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 @@ Return -1 on failure.");
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 @@ Like S.rfind() but raise ValueError when the substring is not found.");
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
index 2f1ae60b6c..b48471e502 100644
--- a/Python/ast.c
+++ b/Python/ast.c
@@ -115,7 +115,7 @@ validate_arguments(arguments_ty args)
}
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 @@ validate_expr(expr_ty exp, expr_context_ty ctx)
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 @@ validate_exprs(asdl_seq *exprs, expr_context_ty ctx, int null_ok)
"None disallowed in expression list");
return 0;
}
-
+
}
return 1;
}
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index f9bb388b5a..4f61d1e710 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -53,7 +53,7 @@ builtin___build_class__(PyObject *self, PyObject *args, PyObject *kwds)
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)) {