Hi Jan-Benedict,
With my re-started testing efforts, I've got another one for you I
guess (`./configure --target=v850-elf && make all-gcc`):
../.././gcc/config/v850/v850.c: In function ‘char* construct_restore_jr(rtx)’:
../.././gcc/config/v850/v850.c:2260:22: error: ‘%s’ directive writing up to 39
bytes into a region of size between 32 and 71 [-Werror=format-overflow=]
2260 | sprintf (buff, "movhi hi(%s), r0, r6\n\tmovea lo(%s), r6, r6\n\tjmp
r6",
|
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2261 | name, name);
| ~~~~
I could not reproduce these in my local environment, but I suspect that
you are using a more recent version of gcc than me. The fix looks obvious
however, so please could you try out the attached patch and let me know
if it resolves the problem ?
Cheers
Nick
diff --git a/gcc/config/v850/v850.c b/gcc/config/v850/v850.c
index 249cb400177..db3002a2cfb 100644
--- a/gcc/config/v850/v850.c
+++ b/gcc/config/v850/v850.c
@@ -2181,7 +2181,7 @@ construct_restore_jr (rtx op)
unsigned long int first;
unsigned long int last;
int i;
- static char buff [100]; /* XXX */
+ static char buff [256]; /* XXX */
if (count <= 2)
{