Re: [PATCH 13/13] Include string.h in common-defs.h

Doug Evans
2014-08-06T17:25:30Z

Gary Benson writes:
> This commit includes string.h in common-defs.h and removes all other
> inclusions.
>
> gdb/
> 2014-07-29 Gary Benson <gbenson@redhat.com>
>
> * common/common-defs.h: Include string.h.
> * aarch64-tdep.c: Do not include string.h.
> * ada-exp.y: Likewise.
> * ada-lang.c: Likewise.
> * ada-lex.l: Likewise.
> * ada-typeprint.c: Likewise.
> * ada-valprint.c: Likewise.
> * aix-thread.c: Likewise.
> * alpha-linux-tdep.c: Likewise.
> * alpha-mdebug-tdep.c: Likewise.
> * alpha-nat.c: Likewise.
> * alpha-osf1-tdep.c: Likewise.
> * alpha-tdep.c: Likewise.
> * alphanbsd-tdep.c: Likewise.
> * amd64-dicos-tdep.c: Likewise.
> * amd64-linux-tdep.c: Likewise.
> * amd64-nat.c: Likewise.
> * amd64-sol2-tdep.c: Likewise.
> * amd64fbsd-tdep.c: Likewise.
> * amd64obsd-tdep.c: Likewise.
> * arch-utils.c: Likewise.
> * arm-linux-nat.c: Likewise.
> * arm-linux-tdep.c: Likewise.
> * arm-tdep.c: Likewise.
> * arm-wince-tdep.c: Likewise.
> * armbsd-tdep.c: Likewise.
> * armnbsd-nat.c: Likewise.
> * armnbsd-tdep.c: Likewise.
> * armobsd-tdep.c: Likewise.
> * avr-tdep.c: Likewise.
> * ax-gdb.c: Likewise.
> * ax-general.c: Likewise.
> * bcache.c: Likewise.
> * bfin-tdep.c: Likewise.
> * breakpoint.c: Likewise.
> * build-id.c: Likewise.
> * buildsym.c: Likewise.
> * c-exp.y: Likewise.
> * c-lang.c: Likewise.
> * c-typeprint.c: Likewise.
> * c-valprint.c: Likewise.
> * charset.c: Likewise.
> * cli-out.c: Likewise.
> * cli/cli-cmds.c: Likewise.
> * cli/cli-decode.c: Likewise.
> * cli/cli-dump.c: Likewise.
> * cli/cli-interp.c: Likewise.
> * cli/cli-logging.c: Likewise.
> * cli/cli-script.c: Likewise.
> * cli/cli-setshow.c: Likewise.
> * cli/cli-utils.c: Likewise.
> * coffread.c: Likewise.
> * common/agent.c: Likewise.
> * common/buffer.c: Likewise.
> * common/buffer.h: Likewise.
> * common/common-utils.c: Likewise.
> * common/filestuff.c: Likewise.
> * common/filestuff.c: Likewise.
> * common/format.c: Likewise.
> * common/print-utils.c: Likewise.
> * common/rsp-low.c: Likewise.
> * common/signals.c: Likewise.
> * common/vec.h: Likewise.
> * common/xml-utils.c: Likewise.
> * core-regset.c: Likewise.
> * corefile.c: Likewise.
> * corelow.c: Likewise.
> * cp-abi.c: Likewise.
> * cp-name-parser.y: Likewise.
> * cp-support.c: Likewise.
> * cp-valprint.c: Likewise.
> * cris-tdep.c: Likewise.
> * d-exp.y: Likewise.
> * darwin-nat.c: Likewise.
> * dbxread.c: Likewise.
> * dcache.c: Likewise.
> * demangle.c: Likewise.
> * dicos-tdep.c: Likewise.
> * disasm.c: Likewise.
> * doublest.c: Likewise.
> * dsrec.c: Likewise.
> * dummy-frame.c: Likewise.
> * dwarf2-frame.c: Likewise.
> * dwarf2loc.c: Likewise.
> * dwarf2read.c: Likewise.
> * elfread.c: Likewise.
> * environ.c: Likewise.
> * eval.c: Likewise.
> * event-loop.c: Likewise.
> * exceptions.c: Likewise.
> * exec.c: Likewise.
> * expprint.c: Likewise.
> * f-exp.y: Likewise.
> * f-lang.c: Likewise.
> * f-typeprint.c: Likewise.
> * f-valprint.c: Likewise.
> * fbsd-nat.c: Likewise.
> * findcmd.c: Likewise.
> * findvar.c: Likewise.
> * fork-child.c: Likewise.
> * frame.c: Likewise.
> * frv-linux-tdep.c: Likewise.
> * frv-tdep.c: Likewise.
> * gdb.c: Likewise.
> * gdb_bfd.c: Likewise.
> * gdbarch.c: Likewise.
> * gdbarch.sh: Likewise.
> * gdbtypes.c: Likewise.
> * gnu-nat.c: Likewise.
> * gnu-v2-abi.c: Likewise.
> * gnu-v3-abi.c: Likewise.
> * go-exp.y: Likewise.
> * go-lang.c: Likewise.
> * go32-nat.c: Likewise.
> * guile/guile.c: Likewise.
> * guile/scm-auto-load.c: Likewise.
> * hppa-hpux-tdep.c: Likewise.
> * hppa-linux-nat.c: Likewise.
> * hppanbsd-tdep.c: Likewise.
> * hppaobsd-tdep.c: Likewise.
> * i386-cygwin-tdep.c: Likewise.
> * i386-dicos-tdep.c: Likewise.
> * i386-linux-tdep.c: Likewise.
> * i386-nto-tdep.c: Likewise.
> * i386-sol2-tdep.c: Likewise.
> * i386-tdep.c: Likewise.
> * i386bsd-tdep.c: Likewise.
> * i386gnu-nat.c: Likewise.
> * i386nbsd-tdep.c: Likewise.
> * i386obsd-tdep.c: Likewise.
> * i387-tdep.c: Likewise.
> * ia64-libunwind-tdep.c: Likewise.
> * ia64-linux-nat.c: Likewise.
> * inf-child.c: Likewise.
> * inf-ptrace.c: Likewise.
> * inf-ttrace.c: Likewise.
> * infcall.c: Likewise.
> * infcmd.c: Likewise.
> * inflow.c: Likewise.
> * infrun.c: Likewise.
> * interps.c: Likewise.
> * iq2000-tdep.c: Likewise.
> * irix5-nat.c: Likewise.
> * jv-exp.y: Likewise.
> * jv-lang.c: Likewise.
> * jv-typeprint.c: Likewise.
> * jv-valprint.c: Likewise.
> * language.c: Likewise.
> * linux-fork.c: Likewise.
> * linux-nat.c: Likewise.
> * lm32-tdep.c: Likewise.
> * m2-exp.y: Likewise.
> * m2-typeprint.c: Likewise.
> * m32c-tdep.c: Likewise.
> * m32r-linux-nat.c: Likewise.
> * m32r-linux-tdep.c: Likewise.
> * m32r-rom.c: Likewise.
> * m32r-tdep.c: Likewise.
> * m68hc11-tdep.c: Likewise.
> * m68k-tdep.c: Likewise.
> * m68kbsd-tdep.c: Likewise.
> * m68klinux-nat.c: Likewise.
> * m68klinux-tdep.c: Likewise.
> * m88k-tdep.c: Likewise.
> * machoread.c: Likewise.
> * macrocmd.c: Likewise.
> * main.c: Likewise.
> * mdebugread.c: Likewise.
> * mem-break.c: Likewise.
> * memattr.c: Likewise.
> * memory-map.c: Likewise.
> * mep-tdep.c: Likewise.
> * mi/mi-cmd-break.c: Likewise.
> * mi/mi-cmd-disas.c: Likewise.
> * mi/mi-cmd-env.c: Likewise.
> * mi/mi-cmd-stack.c: Likewise.
> * mi/mi-cmd-var.c: Likewise.
> * mi/mi-cmds.c: Likewise.
> * mi/mi-console.c: Likewise.
> * mi/mi-getopt.c: Likewise.
> * mi/mi-interp.c: Likewise.
> * mi/mi-main.c: Likewise.
> * mi/mi-parse.c: Likewise.
> * microblaze-rom.c: Likewise.
> * microblaze-tdep.c: Likewise.
> * mingw-hdep.c: Likewise.
> * minidebug.c: Likewise.
> * minsyms.c: Likewise.
> * mips-irix-tdep.c: Likewise.
> * mips-linux-tdep.c: Likewise.
> * mips-tdep.c: Likewise.
> * mips64obsd-tdep.c: Likewise.
> * mipsnbsd-tdep.c: Likewise.
> * mipsread.c: Likewise.
> * mn10300-linux-tdep.c: Likewise.
> * mn10300-tdep.c: Likewise.
> * monitor.c: Likewise.
> * moxie-tdep.c: Likewise.
> * mt-tdep.c: Likewise.
> * nat/linux-btrace.c: Likewise.
> * nat/linux-osdata.c: Likewise.
> * nat/linux-procfs.c: Likewise.
> * nat/linux-ptrace.c: Likewise.
> * nat/linux-waitpid.c: Likewise.
> * nbsd-tdep.c: Likewise.
> * nios2-linux-tdep.c: Likewise.
> * nto-procfs.c: Likewise.
> * nto-tdep.c: Likewise.
> * objc-lang.c: Likewise.
> * objfiles.c: Likewise.
> * opencl-lang.c: Likewise.
> * osabi.c: Likewise.
> * osdata.c: Likewise.
> * p-exp.y: Likewise.
> * p-lang.c: Likewise.
> * p-typeprint.c: Likewise.
> * parse.c: Likewise.
> * posix-hdep.c: Likewise.
> * ppc-linux-nat.c: Likewise.
> * ppc-sysv-tdep.c: Likewise.
> * ppcfbsd-tdep.c: Likewise.
> * ppcnbsd-tdep.c: Likewise.
> * ppcobsd-tdep.c: Likewise.
> * printcmd.c: Likewise.
> * procfs.c: Likewise.
> * prologue-value.c: Likewise.
> * python/py-auto-load.c: Likewise.
> * python/py-gdb-readline.c: Likewise.
> * ravenscar-thread.c: Likewise.
> * regcache.c: Likewise.
> * registry.c: Likewise.
> * remote-fileio.c: Likewise.
> * remote-m32r-sdi.c: Likewise.
> * remote-mips.c: Likewise.
> * remote-notif.c: Likewise.
> * remote-sim.c: Likewise.
> * remote.c: Likewise.
> * reverse.c: Likewise.
> * rs6000-aix-tdep.c: Likewise.
> * ser-base.c: Likewise.
> * ser-go32.c: Likewise.
> * ser-mingw.c: Likewise.
> * ser-pipe.c: Likewise.
> * ser-tcp.c: Likewise.
> * ser-unix.c: Likewise.
> * serial.c: Likewise.
> * sh-tdep.c: Likewise.
> * sh64-tdep.c: Likewise.
> * shnbsd-tdep.c: Likewise.
> * skip.c: Likewise.
> * sol-thread.c: Likewise.
> * solib-dsbt.c: Likewise.
> * solib-frv.c: Likewise.
> * solib-osf.c: Likewise.
> * solib-som.c: Likewise.
> * solib-spu.c: Likewise.
> * solib-target.c: Likewise.
> * solib.c: Likewise.
> * somread.c: Likewise.
> * source.c: Likewise.
> * sparc-nat.c: Likewise.
> * sparc-sol2-tdep.c: Likewise.
> * sparc-tdep.c: Likewise.
> * sparc64-tdep.c: Likewise.
> * sparc64fbsd-tdep.c: Likewise.
> * sparc64nbsd-tdep.c: Likewise.
> * sparcnbsd-tdep.c: Likewise.
> * spu-linux-nat.c: Likewise.
> * spu-multiarch.c: Likewise.
> * spu-tdep.c: Likewise.
> * stabsread.c: Likewise.
> * stack.c: Likewise.
> * std-regs.c: Likewise.
> * symfile.c: Likewise.
> * symmisc.c: Likewise.
> * symtab.c: Likewise.
> * target.c: Likewise.
> * thread.c: Likewise.
> * tilegx-linux-nat.c: Likewise.
> * tilegx-tdep.c: Likewise.
> * top.c: Likewise.
> * tracepoint.c: Likewise.
> * tui/tui-command.c: Likewise.
> * tui/tui-data.c: Likewise.
> * tui/tui-disasm.c: Likewise.
> * tui/tui-file.c: Likewise.
> * tui/tui-layout.c: Likewise.
> * tui/tui-out.c: Likewise.
> * tui/tui-regs.c: Likewise.
> * tui/tui-source.c: Likewise.
> * tui/tui-stack.c: Likewise.
> * tui/tui-win.c: Likewise.
> * tui/tui-windata.c: Likewise.
> * tui/tui-winsource.c: Likewise.
> * typeprint.c: Likewise.
> * ui-file.c: Likewise.
> * ui-out.c: Likewise.
> * user-regs.c: Likewise.
> * utils.c: Likewise.
> * v850-tdep.c: Likewise.
> * valarith.c: Likewise.
> * valops.c: Likewise.
> * valprint.c: Likewise.
> * value.c: Likewise.
> * varobj.c: Likewise.
> * vax-tdep.c: Likewise.
> * vaxnbsd-tdep.c: Likewise.
> * vaxobsd-tdep.c: Likewise.
> * windows-nat.c: Likewise.
> * xcoffread.c: Likewise.
> * xml-support.c: Likewise.
> * xstormy16-tdep.c: Likewise.
> * xtensa-linux-nat.c: Likewise.
> [... zoinks! :-) ...]

Fwiw, I'd be happy with replacing all of this with:

* common/common-defs.h: Include string.h.
All other uses deleted.

[and similarly elsewhere]

No need to go back and change anything though.
Just my $0.02.
Some may have a rule to write this as you've done,
but I think this is another case where we're bogging
ourselves down in pedantic administrivia.

[Patch is ok with me, btw.]