Nick Clifton
de564eb5cc
Prevent the --keep-global-symbol and --globalize-symbol options from being used together.
...
This is the result of an email thread starting here:
https://sourceware.org/ml/binutils/2018-09/msg00031.html
The main point of the thread is this observation:
* Supposing we had an object file with two globals, SomeGlobal and
SomeOtherGlobal, if one were to do "--globalize-symbol SomeGlobal
--keep-global-symbol SomeOtherGlobal", you might expect that both
SomeGlobal and SomeOtherGlobal are global in the output file... but it
isn't. Because --keep-global-symbol is set and doesn't include
SomeGlobal, SomeGlobal will be demoted to a local symbol. And because
the check to see if we should apply the --globalize-symbol flag checks
"flags" (the original flag set), and not "sym->flags", it decides not
to do anything, so SomeGlobal remains a local symbol. Although this is
a weird edge case, should this be changed so that --keep-global-symbol
implicitly keeps anything also specified via --globalize-symbol? (The
code seems technically correct with respect to the documentation, but
IMO the behavior is counter-intuitive).
binutils* objcopy.c (copy_main): Issue a fata error if the
--keep-global-symbol(s) and the --globalize-symbol(s) options are
used together.
* doc/binutils.texi: Document that the two options are
incompatible.
* testsuite/binutils-all/copy-5.d: New test.
* testsuite/binutils-all/objcopy.exp: Run the new test.
2018-10-11 11:38:10 +01:00
..
2018-01-03 17:49:56 +10:30
2018-01-03 17:49:56 +10:30
2018-04-25 09:38:17 +09:30
2018-01-03 17:49:56 +10:30
2018-01-03 17:49:56 +10:30
2018-08-31 04:35:57 -07:00
2018-01-03 17:49:56 +10:30
2018-02-26 09:33:15 +10:30
2018-04-30 17:02:59 +01:00
2018-01-03 17:49:56 +10:30
2018-01-03 17:49:56 +10:30
2018-01-03 17:49:56 +10:30
2018-09-15 16:24:18 +09:30
2018-09-15 16:56:55 +09:30
2018-09-15 16:56:55 +09:30
2018-09-15 16:56:55 +09:30
2018-05-30 17:08:03 +01:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2016-02-26 05:01:34 -08:00
2018-09-17 10:10:47 +01:00
2018-09-15 16:24:18 +09:30
2018-09-15 16:24:18 +09:30
2018-09-15 16:24:18 +09:30
2018-10-11 11:38:10 +01:00
2016-07-14 11:32:48 +01:00
2018-01-03 17:49:56 +10:30
2018-01-03 17:49:56 +10:30
2018-05-18 15:26:18 +01:00
2017-11-07 17:01:16 +10:30
2018-01-03 17:49:56 +10:30
2018-01-03 17:49:56 +10:30
2017-11-07 17:01:16 +10:30
2017-11-07 17:01:16 +10:30
2018-01-03 17:49:56 +10:30
2018-01-03 17:49:56 +10:30
2015-11-30 13:28:26 +00:00
2018-01-03 17:49:56 +10:30
2018-09-20 19:02:50 +02:00
2018-01-03 17:49:56 +10:30
2017-10-11 12:02:51 +01:00
2018-01-03 17:49:56 +10:30
2018-09-15 16:24:18 +09:30
2018-04-25 21:13:14 +00:00
2018-04-25 21:13:14 +00:00
2018-09-15 16:56:55 +09:30
2016-03-07 17:29:25 +00:00
2018-09-20 13:32:58 +01:00
2018-02-13 22:55:49 +10:30
2018-09-15 16:24:18 +09:30
2018-09-15 16:24:18 +09:30
2018-09-15 16:24:18 +09:30
2017-11-07 17:01:16 +10:30
2018-01-03 17:49:56 +10:30
2017-09-22 17:05:51 -03:00
2017-09-22 17:05:51 -03:00
2017-04-04 09:06:04 -07:00
2016-11-11 11:49:45 +00:00
2018-04-16 15:13:07 +09:30
2018-09-15 16:56:55 +09:30
2018-01-03 10:30:07 +00:00
2018-01-03 10:30:07 +00:00
2018-09-15 16:24:18 +09:30
2018-01-03 10:30:07 +00:00
2018-01-03 10:30:07 +00:00
2018-01-03 10:30:07 +00:00
2018-01-03 10:30:07 +00:00
2018-01-03 10:30:07 +00:00
2017-08-17 14:51:31 +01:00
2018-03-23 12:20:03 +00:00
2018-03-23 12:20:03 +00:00
2018-01-03 10:30:07 +00:00
2018-03-23 12:20:03 +00:00
2018-04-26 15:12:42 +01:00
2018-04-26 15:12:42 +01:00
2018-10-11 11:38:10 +01:00
2018-05-31 12:00:11 +09:30
2017-11-07 17:01:16 +10:30
2017-11-15 11:34:03 +00:00
2017-11-15 11:34:03 +00:00
2018-09-20 19:02:50 +02:00
2016-07-14 11:32:48 +01:00
2015-09-29 13:31:57 -07:00
2015-09-29 13:31:57 -07:00
2015-09-29 13:31:57 -07:00
2016-02-02 03:30:48 -08:00
2018-09-15 16:56:55 +09:30
2018-09-13 09:09:15 -07:00
2018-09-13 09:09:15 -07:00
2018-09-17 10:10:47 +01:00
2017-11-15 11:34:03 +00:00
2017-11-21 13:12:04 +00:00
2017-09-22 17:05:51 -03:00
2017-09-22 17:05:51 -03:00
2016-10-17 15:29:43 +01:00
2017-11-07 17:01:16 +10:30
2017-11-07 17:01:16 +10:30
2016-08-19 09:16:30 +01:00
2018-08-31 04:38:25 -07:00
2018-09-17 23:31:18 +09:30
2016-07-15 17:02:20 +09:30
2016-07-14 11:34:10 +01:00
2016-07-14 11:34:10 +01:00
2018-09-17 23:31:18 +09:30
2018-09-17 23:31:18 +09:30
2018-09-17 23:31:18 +09:30
2018-09-17 23:31:18 +09:30
2018-09-17 23:31:18 +09:30
2018-09-17 23:31:18 +09:30
2016-07-14 11:32:48 +01:00
2018-01-03 17:49:56 +10:30
2018-09-20 13:32:58 +01:00
2018-08-31 04:38:25 -07:00
2018-09-20 13:32:58 +01:00
2018-09-20 13:32:58 +01:00
2018-09-20 13:32:58 +01:00
2018-09-15 16:24:18 +09:30
2018-09-15 16:24:18 +09:30
2018-09-17 23:16:48 +09:30
2018-09-17 23:16:48 +09:30
2018-09-17 23:16:48 +09:30
2018-09-15 16:24:18 +09:30
2018-09-17 23:16:48 +09:30
2018-09-17 23:16:48 +09:30
2018-09-17 23:16:48 +09:30
2018-04-10 09:41:25 +09:30
2018-09-17 23:16:48 +09:30
2018-09-17 23:16:48 +09:30
2018-09-17 23:16:48 +09:30
2018-09-15 16:56:55 +09:30
2018-09-15 16:56:55 +09:30
2018-09-15 16:56:55 +09:30
2018-09-15 16:56:55 +09:30
2016-04-14 12:04:09 +01:00
2018-09-15 16:24:18 +09:30
2018-01-03 17:49:56 +10:30