From 9e6a7d9c179650478c8c34b8cf81a7699dc2ffe3 Mon Sep 17 00:00:00 2001 From: Stefan Liebler Date: Wed, 26 Jun 2019 08:34:25 +0200 Subject: [PATCH] Fix build warnings in locale/programs/ld-ctype.c MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This patch fixes the gcc warnings seen with gcc 9 -march>=z13 on s390x: programs/ld-ctype.c: In function ‘ctype_read’: programs/ld-ctype.c:1392:13: error: ‘wch’ may be used uninitialized in this function [-Werror=maybe-uninitialized] 1392 | uint32_t wch; | ^~~ programs/ld-ctype.c:1401:7: error: ‘seq’ may be used uninitialized in this function [-Werror=maybe-uninitialized] 1401 | if (seq != NULL && seq->nbytes == 1) | ^ programs/ld-ctype.c:1391:20: note: ‘seq’ was declared here 1391 | struct charseq *seq; | ^~~ Both seq and wch are uninitialized if get_character fails. Thus we are now returning with an error. ChangeLog: * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): Return error if get_character fails. --- ChangeLog | 5 +++++ locale/programs/ld-ctype.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index 7b7bccde4c..adc58e4a14 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2019-06-26 Stefan Liebler + + * locale/programs/ld-ctype.c (charclass_symbolic_ellipsis): + Return error if get_character fails. + 2019-06-25 Stefan Liebler * sysdeps/s390/fpu/libm-test-ulps: Regenerated. diff --git a/locale/programs/ld-ctype.c b/locale/programs/ld-ctype.c index e6105928da..cfc9c43fd5 100644 --- a/locale/programs/ld-ctype.c +++ b/locale/programs/ld-ctype.c @@ -1396,7 +1396,8 @@ charclass_symbolic_ellipsis (struct linereader *ldfile, (int) (now->val.str.lenmb - (cp - last_str)), from); - get_character (now, charmap, repertoire, &seq, &wch); + if (get_character (now, charmap, repertoire, &seq, &wch)) + goto invalid_range; if (seq != NULL && seq->nbytes == 1) /* Yep, we can store information about this byte sequence. */