diff options
| author | Sergei Trofimovich <[email protected]> | 2024-07-17 23:03:34 +0100 |
|---|---|---|
| committer | Mark Wielaard <[email protected]> | 2024-07-18 18:43:33 +0200 |
| commit | 7508696d107ca01b65ce8273c881462a8658f90f (patch) | |
| tree | 0bcd4798706abce1a71b7174eb8ef2355fc9e961 /backends | |
| parent | 87a60d22299c4ba7b94cbce04a32c2abf015f98a (diff) | |
backends: allocate enough stace for null terminator
`gcc-15` added a new warning in https://gcc.gnu.org/PR115185:
i386_regs.c:88:11: error: initializer-string for array of 'char' is too long [-Werror=unterminated-string-initialization]
88 | "ax", "cx", "dx", "bx", "sp", "bp", "si", "di", "ip"
| ^~~~
`elfutils` does not need to store '\0'. We could either initialize the
arrays with individual bytes or allocate extra byte for null.
This change initializes the array bytewise.
* backends/i386_regs.c (i386_register_info): Initialize the
array bytewise to fix gcc-15 warning.
* backends/x86_64_regs.c (x86_64_register_info): Ditto.
Signed-off-by: Sergei Trofimovich <[email protected]>
Diffstat (limited to 'backends')
| -rw-r--r-- | backends/i386_regs.c | 10 | ||||
| -rw-r--r-- | backends/x86_64_regs.c | 9 |
2 files changed, 17 insertions, 2 deletions
diff --git a/backends/i386_regs.c b/backends/i386_regs.c index 7ec93bb9..ead55ef7 100644 --- a/backends/i386_regs.c +++ b/backends/i386_regs.c @@ -85,7 +85,15 @@ i386_register_info (Ebl *ebl __attribute__ ((unused)), { static const char baseregs[][2] = { - "ax", "cx", "dx", "bx", "sp", "bp", "si", "di", "ip" + {'a', 'x'}, + {'c', 'x'}, + {'d', 'x'}, + {'b', 'x'}, + {'s', 'p'}, + {'b', 'p'}, + {'s', 'i'}, + {'d', 'i'}, + {'i', 'p'}, }; case 4: diff --git a/backends/x86_64_regs.c b/backends/x86_64_regs.c index ef987daf..dab8f27f 100644 --- a/backends/x86_64_regs.c +++ b/backends/x86_64_regs.c @@ -82,7 +82,14 @@ x86_64_register_info (Ebl *ebl __attribute__ ((unused)), { static const char baseregs[][2] = { - "ax", "dx", "cx", "bx", "si", "di", "bp", "sp" + {'a', 'x'}, + {'d', 'x'}, + {'c', 'x'}, + {'b', 'x'}, + {'s', 'i'}, + {'d', 'i'}, + {'b', 'p'}, + {'s', 'p'}, }; case 6 ... 7: |
