diff options
author | Tom de Vries <tdevries@suse.de> | 2019-02-26 16:09:40 +0000 |
---|---|---|
committer | Tom de Vries <vries@gcc.gnu.org> | 2019-02-26 16:09:40 +0000 |
commit | 067aef033f3a9ad971fc75ce0631c500de0f0423 (patch) | |
tree | 434333e8de53833cd676db39e731a4c58db473ea /libbacktrace | |
parent | 4fd3c8aad91decbcb204c9c0900da15383945500 (diff) | |
download | gcc-067aef033f3a9ad971fc75ce0631c500de0f0423.zip gcc-067aef033f3a9ad971fc75ce0631c500de0f0423.tar.gz gcc-067aef033f3a9ad971fc75ce0631c500de0f0423.tar.bz2 |
[libbacktrace] Fix btest-lto for older gcc
With gcc 4.8.5, btest_lto ends up with a privatized name for the variable with
name 'global':
...
$ nm btest_lto | grep ' d ' | grep global
0000000000617150 d global.2530
...
which makes test5 fail:
...
test5: unexpected syminfo name got global.2530 expected global
...
Fix this failure by accepting this type of name as a valid name in btest_lto.
2019-02-26 Tom de Vries <tdevries@suse.de>
* btest.c (test5): Allow global.* as minimal symbol name for global.
From-SVN: r269217
Diffstat (limited to 'libbacktrace')
-rw-r--r-- | libbacktrace/ChangeLog | 4 | ||||
-rw-r--r-- | libbacktrace/btest.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/libbacktrace/ChangeLog b/libbacktrace/ChangeLog index bfd828e..662d00e 100644 --- a/libbacktrace/ChangeLog +++ b/libbacktrace/ChangeLog @@ -1,5 +1,9 @@ 2019-02-26 Tom de Vries <tdevries@suse.de> + * btest.c (test5): Allow global.* as minimal symbol name for global. + +2019-02-26 Tom de Vries <tdevries@suse.de> + * Makefile.am (TESTS): Only add b3test_dwz_buildid if HAVE_DWZ. * Makefile.in: Regenerate. diff --git a/libbacktrace/btest.c b/libbacktrace/btest.c index b1c2a2a..32718ad1 100644 --- a/libbacktrace/btest.c +++ b/libbacktrace/btest.c @@ -423,7 +423,8 @@ test5 (void) fprintf (stderr, "test5: NULL syminfo name\n"); symdata.failed = 1; } - else if (strcmp (symdata.name, "global") != 0) + else if (!(strncmp (symdata.name, "global", 6) == 0 + && (symdata.name[6] == '\0'|| symdata.name[6] == '.'))) { fprintf (stderr, "test5: unexpected syminfo name got %s expected %s\n", |