compile: Filter out -fpreprocessed
authorJan Kratochvil <jan.kratochvil@redhat.com>
Tue, 3 Feb 2015 17:17:02 +0000 (18:17 +0100)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Tue, 3 Feb 2015 17:17:02 +0000 (18:17 +0100)
commita7606d8083c9e217294f6e47a8d2903716c6337c
tree364838104eeeaacc3533df88ca54788c5d2c3702
parent60f79275127603876d94da4bf4e3f6212903b407
compile: Filter out -fpreprocessed

With global system gcc-5.0 if one also installs ccache (needing a different
patch
https://bugzilla.samba.org/show_bug.cgi?id=11060
for -fplugin=libcc1plugin) it breaks as GDB will read from inferior
DW_AT_producer containing -fpreprocessed (due to ccache used to compile the
inferior).
    <c>   DW_AT_producer    : (indirect string, offset: 0x52): GNU C11 5.0.0 20150114 (Red Hat 5.0.0-0.1) -fpreprocessed -mtune=generic -
march=x86-64 -g

It is wrong that gcc puts -fpreprocessed into DW_AT_producer - fixed it in
trunk GCCs:
https://gcc.gnu.org/ml/gcc-patches/2015-01/msg01495.html
But even with that fix there are already built inferiors out there which GDB
could be compatible (for the 'compile' mode) with.

gdb/ChangeLog
2015-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>

Filter out inferior gcc option -fpreprocessed.
* compile/compile.c (filter_args): New function.
(get_args): Use it.
gdb/ChangeLog
gdb/compile/compile.c