From a13ba30840ba7a8450dcb4edd356de61fcb89130 Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Sat, 21 Sep 2019 18:13:52 +0930 Subject: [PATCH] Work around gcc10 FAIL: S-records with constructors gcc10 on x86_64 and powerpc64le recognises that the loop in Foo::operator= can be turned into a call to memmove, which then results in an undefined symbol when linking. Avoid that by making the loop smaller. * testsuite/ld-srec/sr3.cc (FOO_MSG_LEN): Set to 4. --- ld/ChangeLog | 4 ++++ ld/testsuite/ld-srec/sr3.cc | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/ld/ChangeLog b/ld/ChangeLog index 57d4df713a..eb7981ea48 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,3 +1,7 @@ +2019-09-22 Alan Modra + + * testsuite/ld-srec/sr3.cc (FOO_MSG_LEN): Set to 4. + 2019-09-20 Nelson Chu * testsuite/ld-riscv-elf/weakref32.s: Add relaxable undef weak code. diff --git a/ld/testsuite/ld-srec/sr3.cc b/ld/testsuite/ld-srec/sr3.cc index 0b5fa7ec89..29f8019468 100644 --- a/ld/testsuite/ld-srec/sr3.cc +++ b/ld/testsuite/ld-srec/sr3.cc @@ -1,6 +1,6 @@ // This file is compiled and linked into the S-record format. -#define FOO_MSG_LEN 80 +#define FOO_MSG_LEN 4 class Foo { static int foos; -- 2.34.1