diff options
author | Mark Wielaard <mark@klomp.org> | 2017-02-12 21:51:34 +0100 |
---|---|---|
committer | Mark Wielaard <mark@klomp.org> | 2017-03-24 17:45:53 +0100 |
commit | 93c51144c3f664d4e9709da75a1d0fa00ea0fe95 (patch) | |
tree | 1841bc458a9c5becfd32a4c071a65904722103af /libasm | |
parent | b1042ce216eaef96099f263fb81141dbdec004fd (diff) |
libasm: Fix one GCC7 -Wformat-truncation=2 warning.
Make sure that if we have really lots of labels the tempsym doesn't get
truncated because it is too small to hold the whole name.
This doesn't enable -Wformat-truncation=2 or fix other "issues" pointed
out by enabling this warning because there are currently some issues
with it. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79448
Signed-off-by: Mark Wielaard <mark@klomp.org>
Diffstat (limited to 'libasm')
-rw-r--r-- | libasm/ChangeLog | 6 | ||||
-rw-r--r-- | libasm/asm_newsym.c | 6 |
2 files changed, 9 insertions, 3 deletions
diff --git a/libasm/ChangeLog b/libasm/ChangeLog index 26fc5a95..16568422 100644 --- a/libasm/ChangeLog +++ b/libasm/ChangeLog @@ -1,8 +1,12 @@ +2017-02-12 Mark Wielaard <mjw@redhat.com> + + * asm_newsym.c (asm_newsym): Increase TEMPSYMLEN to 13. + 2017-02-15 Ulf Hermann <ulf.hermann@qt.io> * disasm_str.c: Include system.h. -2015-10-11 Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp> +2016-10-11 Akihiko Odaki <akihiko.odaki.4i@stu.hosei.ac.jp> * asm_align.c: Remove sys/param.h include. diff --git a/libasm/asm_newsym.c b/libasm/asm_newsym.c index 332432a9..53891668 100644 --- a/libasm/asm_newsym.c +++ b/libasm/asm_newsym.c @@ -1,5 +1,5 @@ /* Define new symbol for current position in given section. - Copyright (C) 2002, 2005, 2016 Red Hat, Inc. + Copyright (C) 2002, 2005, 2016, 2017 Red Hat, Inc. This file is part of elfutils. Written by Ulrich Drepper <drepper@redhat.com>, 2002. @@ -44,7 +44,9 @@ AsmSym_t * asm_newsym (AsmScn_t *asmscn, const char *name, GElf_Xword size, int type, int binding) { -#define TEMPSYMLEN 10 +/* We don't really expect labels with many digits, but in theory it could + be 10 digits (plus ".L" and a zero terminator). */ +#define TEMPSYMLEN 13 char tempsym[TEMPSYMLEN]; AsmSym_t *result; |