diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 96369d5e5f..ae6f2c9e41 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,398 @@
+2017-09-09  John Baldwin  <jhb@FreeBSD.org>
+
+	* aarch64-linux-nat.c: Remove _initialize_aarch64_linux_nat
+	prototype.
+	* aarch64-linux-tdep.c: Remove _initialize_aarch64_linux_tdep
+	prototype.
+	* aarch64-newlib-tdep.c: Remove _initialize_aarch64_newlib_tdep
+	prototype.
+	* aarch64-tdep.c: Remove _initialize_aarch64_tdep prototype.
+	* ada-exp.y: Remove _initialize_ada_exp prototype.
+	* ada-lang.c: Remove _initialize_ada_language prototype.
+	* ada-tasks.c: Remove _initialize_tasks prototype.
+	* addrmap.c: Remove _initialize_addrmap prototype.
+	* agent.c: Remove _initialize_agent prototype.
+	* aix-thread.c: Remove _initialize_aix_thread prototype.
+	* alpha-bsd-nat.c: Remove _initialize_alphabsd_nat prototype.
+	* alpha-linux-nat.c: Remove _initialize_alpha_linux_nat prototype.
+	* alpha-linux-tdep.c: Remove _initialize_alpha_linux_tdep
+	prototype.
+	* alpha-nbsd-tdep.c: Remove _initialize_alphanbsd_tdep prototype.
+	* alpha-obsd-tdep.c: Remove _initialize_alphaobsd_tdep prototype.
+	* alpha-tdep.c: Remove _initialize_alpha_tdep prototype.
+	* amd64-darwin-tdep.c: Remove _initialize_amd64_darwin_tdep
+	prototype.
+	* amd64-dicos-tdep.c: Remove _initialize_amd64_dicos_tdep
+	prototype.
+	* amd64-fbsd-nat.c: Remove _initialize_amd64fbsd_nat prototype.
+	* amd64-fbsd-tdep.c: Remove _initialize_amd64fbsd_tdep prototype.
+	* amd64-linux-nat.c: Remove _initialize_amd64_linux_nat prototype.
+	* amd64-linux-tdep.c: Remove _initialize_amd64_linux_tdep
+	prototype.
+	* amd64-nbsd-nat.c: Remove _initialize_amd64nbsd_nat prototype.
+	* amd64-nbsd-tdep.c: Remove _initialize_amd64nbsd_tdep prototype.
+	* amd64-obsd-nat.c: Remove _initialize_amd64obsd_nat prototype.
+	* amd64-obsd-tdep.c: Remove _initialize_amd64obsd_tdep prototype.
+	* amd64-sol2-tdep.c: Remove _initialize_amd64_sol2_tdep prototype.
+	* amd64-tdep.c: Remove _initialize_amd64_tdep prototype.
+	* amd64-windows-nat.c: Remove _initialize_amd64_windows_nat
+	prototype.
+	* amd64-windows-tdep.c: Remove _initialize_amd64_windows_tdep
+	prototype.
+	* annotate.c: Remove _initialize_annotate prototype.
+	* arc-newlib-tdep.c: Remove _initialize_arc_newlib_tdep prototype.
+	* arc-tdep.c: Remove _initialize_arc_tdep prototype.
+	* arch-utils.c: Remove _initialize_gdbarch_utils prototype.
+	* arm-linux-nat.c: Remove _initialize_arm_linux_nat prototype.
+	* arm-linux-tdep.c: Remove _initialize_arm_linux_tdep prototype.
+	* arm-nbsd-tdep.c: Remove _initialize_arm_netbsd_tdep prototype.
+	* arm-obsd-tdep.c: Remove _initialize_armobsd_tdep prototype.
+	* arm-symbian-tdep.c: Remove _initialize_arm_symbian_tdep
+	prototype.
+	* arm-tdep.c: Remove _initialize_arm_tdep prototype.
+	* arm-wince-tdep.c: Remove _initialize_arm_wince_tdep prototype.
+	* auto-load.c: Remove _initialize_auto_load prototype.
+	* auxv.c: Remove _initialize_auxv prototype.
+	* avr-tdep.c: Remove _initialize_avr_tdep prototype.
+	* ax-gdb.c: Remove _initialize_ax_gdb prototype.
+	* bfin-linux-tdep.c: Remove _initialize_bfin_linux_tdep prototype.
+	* bfin-tdep.c: Remove _initialize_bfin_tdep prototype.
+	* break-catch-sig.c: Remove _initialize_break_catch_sig prototype.
+	* break-catch-syscall.c: Remove _initialize_break_catch_syscall
+	prototype.
+	* break-catch-throw.c: Remove _initialize_break_catch_throw
+	prototype.
+	* breakpoint.c: Remove _initialize_breakpoint prototype.
+	* bsd-uthread.c: Remove _initialize_bsd_uthread prototype.
+	* btrace.c: Remove _initialize_btrace prototype.
+	* charset.c: Remove _initialize_charset prototype.
+	* cli/cli-cmds.c: Remove _initialize_cli_cmds prototype.
+	* cli/cli-dump.c: Remove _initialize_cli_dump prototype.
+	* cli/cli-interp.c: Remove _initialize_cli_interp prototype.
+	* cli/cli-logging.c: Remove _initialize_cli_logging prototype.
+	* cli/cli-script.c: Remove _initialize_cli_script prototype.
+	* coff-pe-read.c: Remove _initialize_coff_pe_read prototype.
+	* coffread.c: Remove _initialize_coffread prototype.
+	* compile/compile.c: Remove _initialize_compile prototype.
+	* complaints.c: Remove _initialize_complaints prototype.
+	* completer.c: Remove _initialize_completer prototype.
+	* copying.awk: Remove _initialize_copying prototype.
+	* copying.c: Regenerate.
+	* core-regset.c: Remove _initialize_core_regset prototype.
+	* corefile.c: Remove _initialize_core prototype.
+	* corelow.c: Remove _initialize_corelow prototype.
+	* cp-abi.c: Remove _initialize_cp_abi prototype.
+	* cp-namespace.c: Remove _initialize_cp_namespace prototype.
+	* cp-support.c: Remove _initialize_cp_support prototype.
+	* cp-valprint.c: Remove _initialize_cp_valprint prototype.
+	* cris-linux-tdep.c: Remove _initialize_cris_linux_tdep prototype.
+	* cris-tdep.c: Remove _initialize_cris_tdep prototype.
+	* ctf.c: Remove _initialize_ctf prototype.
+	* d-lang.c: Remove _initialize_d_language prototype.
+	* darwin-nat-info.c: Remove _initialize_darwin_info_commands
+	prototype.
+	* darwin-nat.c: Remove _initialize_darwin_inferior prototype.
+	* dbxread.c: Remove _initialize_dbxread prototype.
+	* dcache.c: Remove _initialize_dcache prototype.
+	* demangle.c: Remove _initialize_demangler prototype.
+	* disasm-selftests.c: Remove _initialize_disasm_selftests
+	prototype.
+	* disasm.c: Remove _initialize_disasm prototype.
+	* dtrace-probe.c: Remove _initialize_dtrace_probe prototype.
+	* dummy-frame.c: Remove _initialize_dummy_frame prototype.
+	* dwarf2-frame-tailcall.c: Remove _initialize_tailcall_frame
+	prototype.
+	* dwarf2-frame.c: Remove _initialize_dwarf2_frame prototype.
+	* dwarf2expr.c: Remove _initialize_dwarf2expr prototype.
+	* dwarf2loc.c: Remove _initialize_dwarf2loc prototype.
+	* dwarf2read.c: Remove _initialize_dwarf2_read prototype.
+	* elfread.c: Remove _initialize_elfread prototype.
+	* exec.c: Remove _initialize_exec prototype.
+	* extension.c: Remove _initialize_extension prototype.
+	* f-lang.c: Remove _initialize_f_language prototype.
+	* f-valprint.c: Remove _initialize_f_valprint prototype.
+	* fbsd-nat.c: Remove _initialize_fbsd_nat prototype.
+	* fbsd-tdep.c: Remove _initialize_fbsd_tdep prototype.
+	* filesystem.c: Remove _initialize_filesystem prototype.
+	* findcmd.c: Remove _initialize_mem_search prototype.
+	* fork-child.c: Remove _initialize_fork_child prototype.
+	* frame-base.c: Remove _initialize_frame_base prototype.
+	* frame-unwind.c: Remove _initialize_frame_unwind prototype.
+	* frame.c: Remove _initialize_frame prototype.
+	* frv-linux-tdep.c: Remove _initialize_frv_linux_tdep prototype.
+	* frv-tdep.c: Remove _initialize_frv_tdep prototype.
+	* ft32-tdep.c: Remove _initialize_ft32_tdep prototype.
+	* gcore.c: Remove _initialize_gcore prototype.
+	* gdb_bfd.c: Remove _initialize_gdb_bfd prototype.
+	* gdbarch.c: Regenerate.
+	* gdbarch.sh: Remove _initialize_gdbarch prototype.
+	* gdbtypes.c: Remove _initialize_gdbtypes prototype.
+	* gnu-nat.c: Remove _initialize_gnu_nat prototype.
+	* gnu-v2-abi.c: Remove _initialize_gnu_v2_abi prototype.
+	* gnu-v3-abi.c: Remove _initialize_gnu_v3_abi prototype.
+	* go-lang.c: Remove _initialize_go_language prototype.
+	* go32-nat.c: Remove _initialize_go32_nat prototype.
+	* guile/guile.c: Remove _initialize_guile prototype.
+	* h8300-tdep.c: Remove _initialize_h8300_tdep prototype.
+	* hppa-linux-nat.c: Remove _initialize_hppa_linux_nat prototype.
+	* hppa-linux-tdep.c: Remove _initialize_hppa_linux_tdep prototype.
+	* hppa-nbsd-nat.c: Remove _initialize_hppanbsd_nat prototype.
+	* hppa-nbsd-tdep.c: Remove _initialize_hppanbsd_tdep prototype.
+	* hppa-obsd-nat.c: Remove _initialize_hppaobsd_nat prototype.
+	* hppa-obsd-tdep.c: Remove _initialize_hppaobsd_tdep prototype.
+	* hppa-tdep.c: Remove _initialize_hppa_tdep prototype.
+	* i386-bsd-nat.c: Remove _initialize_i386bsd_nat prototype.
+	* i386-cygwin-tdep.c: Remove _initialize_i386_cygwin_tdep
+	prototype.
+	* i386-darwin-tdep.c: Remove _initialize_i386_darwin_tdep
+	prototype.
+	* i386-dicos-tdep.c: Remove _initialize_i386_dicos_tdep prototype.
+	* i386-fbsd-nat.c: Remove _initialize_i386fbsd_nat prototype.
+	* i386-fbsd-tdep.c: Remove _initialize_i386fbsd_tdep prototype.
+	* i386-gnu-nat.c: Remove _initialize_i386gnu_nat prototype.
+	* i386-gnu-tdep.c: Remove _initialize_i386gnu_tdep prototype.
+	* i386-linux-nat.c: Remove _initialize_i386_linux_nat prototype.
+	* i386-linux-tdep.c: Remove _initialize_i386_linux_tdep prototype.
+	* i386-nbsd-nat.c: Remove _initialize_i386nbsd_nat prototype.
+	* i386-nbsd-tdep.c: Remove _initialize_i386nbsd_tdep prototype.
+	* i386-nto-tdep.c: Remove _initialize_i386nto_tdep prototype.
+	* i386-obsd-nat.c: Remove _initialize_i386obsd_nat prototype.
+	* i386-obsd-tdep.c: Remove _initialize_i386obsd_tdep prototype.
+	* i386-sol2-nat.c: Remove _initialize_amd64_sol2_nat prototype.
+	* i386-sol2-tdep.c: Remove _initialize_amd64_sol2_tdep prototype.
+	* i386-tdep.c: Remove _initialize_i386_tdep prototype.
+	* i386-windows-nat.c: Remove _initialize_i386_windows_nat
+	prototype.
+	* ia64-libunwind-tdep.c: Remove _initialize_libunwind_frame
+	prototype.
+	* ia64-linux-nat.c: Remove _initialize_ia64_linux_nat prototype.
+	* ia64-linux-tdep.c: Remove _initialize_ia64_linux_tdep prototype.
+	* ia64-tdep.c: Remove _initialize_ia64_tdep prototype.
+	* ia64-vms-tdep.c: Remove _initialize_ia64_vms_tdep prototype.
+	* infcall.c: Remove _initialize_infcall prototype.
+	* infcmd.c: Remove _initialize_infcmd prototype.
+	* inferior.c: Remove _initialize_inferiors prototype.
+	* inflow.c: Remove _initialize_inflow prototype.
+	* infrun.c: Remove _initialize_infrun prototype.
+	* interps.c: Remove _initialize_interpreter prototype.
+	* iq2000-tdep.c: Remove _initialize_iq2000_tdep prototype.
+	* jit.c: Remove _initialize_jit prototype.
+	* language.c: Remove _initialize_language prototype.
+	* linux-fork.c: Remove _initialize_linux_fork prototype.
+	* linux-nat.c: Remove _initialize_linux_nat prototype.
+	* linux-tdep.c: Remove _initialize_linux_tdep prototype.
+	* linux-thread-db.c: Remove _initialize_thread_db prototype.
+	* lm32-tdep.c: Remove _initialize_lm32_tdep prototype.
+	* m2-lang.c: Remove _initialize_m2_language prototype.
+	* m32c-tdep.c: Remove _initialize_m32c_tdep prototype.
+	* m32r-linux-nat.c: Remove _initialize_m32r_linux_nat prototype.
+	* m32r-linux-tdep.c: Remove _initialize_m32r_linux_tdep prototype.
+	* m32r-tdep.c: Remove _initialize_m32r_tdep prototype.
+	* m68hc11-tdep.c: Remove _initialize_m68hc11_tdep prototype.
+	* m68k-bsd-nat.c: Remove _initialize_m68kbsd_nat prototype.
+	* m68k-bsd-tdep.c: Remove _initialize_m68kbsd_tdep prototype.
+	* m68k-linux-nat.c: Remove _initialize_m68k_linux_tdep prototype.
+	* m68k-linux-tdep.c: Remove _initialize_m68k_linux_tdep prototype.
+	* m68k-tdep.c: Remove _initialize_m68k_tdep prototype.
+	* m88k-bsd-nat.c: Remove _initialize_m68kbsd_nat prototype.
+	* m88k-tdep.c: Remove _initialize_m68kbsd_tdep prototype.
+	* machoread.c: Remove _initialize_machoread prototype.
+	* macrocmd.c: Remove _initialize_macrocmd prototype.
+	* macroscope.c: Remove _initialize_macroscope prototype.
+	* maint.c: Remove _initialize_maint_cmds prototype.
+	* mdebugread.c: Remove _initialize_mdebugread prototype.
+	* memattr.c: Remove _initialize_mem prototype.
+	* mep-tdep.c: Remove _initialize_mep_tdep prototype.
+	* mi/mi-cmd-env.c: Remove _initialize_mi_cmd_env prototype.
+	* mi/mi-cmds.c: Remove _initialize_mi_cmds prototype.
+	* mi/mi-interp.c: Remove _initialize_mi_interp prototype.
+	* mi/mi-main.c: Remove _initialize_mi_main prototype.
+	* microblaze-linux-tdep.c: Remove
+	_initialize_microblaze_linux_tdep prototype.
+	* microblaze-tdep.c: Remove _initialize_microblaze_tdep prototype.
+	* mips-fbsd-nat.c: Remove _initialize_mips_fbsd_nat prototype.
+	* mips-fbsd-tdep.c: Remove _initialize_mips_fbsd_tdep prototype.
+	* mips-linux-nat.c: Remove _initialize_mips_linux_nat prototype.
+	* mips-linux-tdep.c: Remove _initialize_mips_linux_tdep prototype.
+	* mips-nbsd-nat.c: Remove _initialize_mipsnbsd_nat prototype.
+	* mips-nbsd-tdep.c: Remove _initialize_mipsnbsd_tdep prototype.
+	* mips-sde-tdep.c: Remove _initialize_mips_sde_tdep prototype.
+	* mips-tdep.c: Remove _initialize_mips_tdep prototype.
+	* mips64-obsd-nat.c: Remove _initialize_mips64obsd_nat prototype.
+	* mips64-obsd-tdep.c: Remove _initialize_mips64obsd_tdep
+	prototype.
+	* mipsread.c: Remove _initialize_mipsread prototype.
+	* mn10300-linux-tdep.c: Remove _initialize_mn10300_linux_tdep
+	prototype.
+	* mn10300-tdep.c: Remove _initialize_mn10300_tdep prototype.
+	* moxie-tdep.c: Remove _initialize_moxie_tdep prototype.
+	* msp430-tdep.c: Remove _initialize_msp430_tdep prototype.
+	* mt-tdep.c: Remove _initialize_mt_tdep prototype.
+	* nds32-tdep.c: Remove _initialize_nds32_tdep prototype.
+	* nios2-linux-tdep.c: Remove _initialize_nios2_linux_tdep
+	prototype.
+	* nios2-tdep.c: Remove _initialize_nios2_tdep prototype.
+	* nto-procfs.c: Remove _initialize_procfs prototype.
+	* nto-tdep.c: Remove _initialize_nto_tdep prototype.
+	* objc-lang.c: Remove _initialize_objc_language prototype.
+	* objfiles.c: Remove _initialize_objfiles prototype.
+	* observer.c: Remove observer_test_first_notification_function,
+	observer_test_second_notification_function,
+	observer_test_third_notification_function, and
+	_initialize_observer prototypes.
+	* opencl-lang.c: Remove _initialize_opencl_language prototypes.
+	* osabi.c: Remove _initialize_gdb_osabi prototype.
+	* osdata.c: Remove _initialize_osdata prototype.
+	* p-valprint.c: Remove _initialize_pascal_valprint prototype.
+	* parse.c: Remove _initialize_parse prototype.
+	* ppc-fbsd-nat.c: Remove _initialize_ppcfbsd_nat prototype.
+	* ppc-fbsd-tdep.c: Remove _initialize_ppcfbsd_tdep prototype.
+	* ppc-linux-nat.c: Remove _initialize_ppc_linux_nat prototype.
+	* ppc-linux-tdep.c: Remove _initialize_ppc_linux_tdep prototype.
+	* ppc-nbsd-nat.c: Remove _initialize_ppcnbsd_nat prototype.
+	* ppc-nbsd-tdep.c: Remove _initialize_ppcnbsd_tdep prototype.
+	* ppc-obsd-nat.c: Remove _initialize_ppcobsd_nat prototype.
+	* ppc-obsd-tdep.c: Remove _initialize_ppcobsd_tdep prototype.
+	* printcmd.c: Remove _initialize_printcmd prototype.
+	* probe.c: Remove _initialize_probe prototype.
+	* proc-api.c: Remove _initialize_proc_api prototype.
+	* proc-events.c: Remove _initialize_proc_events prototype.
+	* proc-service.c: Remove _initialize_proc_service prototype.
+	* procfs.c: Remove _initialize_procfs prototype.
+	* psymtab.c: Remove _initialize_psymtab prototype.
+	* python/python.c: Remove _initialize_python prototype.
+	* ravenscar-thread.c: Remove _initialize_ravenscar prototype.
+	* record-btrace.c: Remove _initialize_record_btrace prototype.
+	* record-full.c: Remove _initialize_record_full prototype.
+	* record.c: Remove _initialize_record prototype.
+	* regcache.c: Remove _initialize_regcache prototype.
+	* reggroups.c: Remove _initialize_reggroup prototype.
+	* remote-notif.c: Remove _initialize_notif prototype.
+	* remote-sim.c: Remove _initialize_remote_sim prototype.
+	* remote.c: Remove _initialize_remote prototype.
+	* reverse.c: Remove _initialize_reverse prototype.
+	* rl78-tdep.c: Remove _initialize_rl78_tdep prototype.
+	* rs6000-aix-tdep.c: Remove _initialize_rs6000_aix_tdep prototype.
+	* rs6000-lynx178-tdep.c: Remove _initialize_rs6000_lynx178_tdep
+	prototype.
+	* rs6000-nat.c: Remove _initialize_rs6000_nat prototype.
+	* rs6000-tdep.c: Remove _initialize_rs6000_tdep prototype.
+	* rust-exp.y: Remove _initialize_rust_exp prototype.
+	* rx-tdep.c: Remove _initialize_rx_tdep prototype.
+	* s390-linux-nat.c: Remove _initialize_s390_nat prototype.
+	* s390-linux-tdep.c: Remove _initialize_s390_tdep prototype.
+	* score-tdep.c: Remove _initialize_score_tdep prototype.
+	* selftest-arch.c: Remove _initialize_selftests_foreach_arch
+	prototype.
+	* ser-go32.c: Remove _initialize_ser_dos prototype.
+	* ser-mingw.c: Remove _initialize_ser_windows prototype.
+	* ser-pipe.c: Remove _initialize_ser_pipe prototype.
+	* ser-tcp.c: Remove _initialize_ser_tcp prototype.
+	* ser-unix.c: Remove _initialize_ser_hardwire prototype.
+	* serial.c: Remove _initialize_serial prototype.
+	* sh-linux-tdep.c: Remove _initialize_sh_linux_tdep prototype.
+	* sh-nbsd-nat.c: Remove _initialize_shnbsd_nat prototype.
+	* sh-nbsd-tdep.c: Remove _initialize_shnbsd_tdep prototype.
+	* sh-tdep.c: Remove _initialize_sh_tdep prototype.
+	* skip.c: Remove _initialize_step_skip prototype.
+	* sol-thread.c: Remove _initialize_sol_thread prototype.
+	* solib-aix.c: Remove _initialize_solib_aix prototype.
+	* solib-darwin.c: Remove _initialize_darwin_solib prototype.
+	* solib-dsbt.c: Remove _initialize_dsbt_solib prototype.
+	* solib-frv.c: Remove _initialize_frv_solib prototype.
+	* solib-spu.c: Remove _initialize_spu_solib prototype.
+	* solib-svr4.c: Remove _initialize_svr4_solib prototype.
+	* solib-target.c: Remove _initialize_solib_target prototype.
+	* solib.c: Remove _initialize_solib prototype.
+	* source.c: Remove _initialize_source prototype.
+	* sparc-linux-nat.c: Remove _initialize_sparc_linux_nat prototype.
+	* sparc-linux-tdep.c: Remove _initialize_sparc_linux_tdep
+	prototype.
+	* sparc-nat.c: Remove _initialize_sparc_nat prototype.
+	* sparc-nbsd-nat.c: Remove _initialize_sparcnbsd_nat prototype.
+	* sparc-nbsd-tdep.c: Remove _initialize_sparcnbsd_tdep prototype.
+	* sparc-obsd-tdep.c: Remove _initialize_sparc32obsd_tdep
+	prototype.
+	* sparc-sol2-nat.c: Remove _initialize_sparc_sol2_nat prototype.
+	* sparc-sol2-tdep.c: Remove _initialize_sparc_sol2_tdep prototype.
+	* sparc-tdep.c: Remove _initialize_sparc_tdep prototype.
+	* sparc64-fbsd-nat.c: Remove _initialize_sparc64fbsd_nat
+	prototype.
+	* sparc64-fbsd-tdep.c: Remove _initialize_sparc64fbsd_tdep
+	prototype.
+	* sparc64-linux-nat.c: Remove _initialize_sparc64_linux_nat
+	prototype.
+	* sparc64-linux-tdep.c: Remove _initialize_sparc64_linux_tdep
+	prototype.
+	* sparc64-nat.c: Remove _initialize_sparc64_nat prototype.
+	* sparc64-nbsd-nat.c: Remove _initialize_sparc64nbsd_nat
+	prototype.
+	* sparc64-nbsd-tdep.c: Remove _initialize_sparc64nbsd_tdep
+	prototype.
+	* sparc64-obsd-nat.c: Remove _initialize_sparc64obsd_nat
+	prototype.
+	* sparc64-obsd-tdep.c: Remove _initialize_sparc64obsd_tdep
+	prototype.
+	* sparc64-sol2-tdep.c: Remove _initialize_sparc64_sol2_tdep
+	prototype.
+	* spu-linux-nat.c: Remove _initialize_spu_nat prototype.
+	* spu-multiarch.c: Remove _initialize_spu_multiarch prototype.
+	* spu-tdep.c: Remove _initialize_spu_tdep prototype.
+	* stabsread.c: Remove _initialize_stabsread prototype.
+	* stack.c: Remove _initialize_stack prototype.
+	* stap-probe.c: Remove _initialize_stap_probe prototype.
+	* std-regs.c: Remove _initialize_frame_reg prototype.
+	* symfile-debug.c: Remove _initialize_symfile_debug prototype.
+	* symfile-mem.c: Remove _initialize_symfile_mem prototype.
+	* symfile.c: Remove _initialize_symfile prototype.
+	* symmisc.c: Remove _initialize_symmisc prototype.
+	* symtab.c: Remove _initialize_symtab prototype.
+	* target-dcache.c: Remove _initialize_target_dcache prototype.
+	* target-descriptions.c: Remove _initialize_target_descriptions
+	prototype.
+	* thread.c: Remove _initialize_thread prototype.
+	* tic6x-linux-tdep.c: Remove _initialize_tic6x_linux_tdep
+	prototype.
+	* tic6x-tdep.c: Remove _initialize_tic6x_tdep prototype.
+	* tilegx-linux-nat.c: Remove _initialize_tile_linux_nat prototype.
+	* tilegx-linux-tdep.c: Remove _initialize_tilegx_linux_tdep
+	prototype.
+	* tilegx-tdep.c: Remove _initialize_tilegx_tdep prototype.
+	* tracefile-tfile.c: Remove _initialize_tracefile_tfile prototype.
+	* tracefile.c: Remove _initialize_tracefile prototype.
+	* tracepoint.c: Remove _initialize_tracepoint prototype.
+	* tui/tui-hooks.c: Remove _initialize_tui_hooks prototype.
+	* tui/tui-interp.c: Remove _initialize_tui_interp prototype.
+	* tui/tui-layout.c: Remove _initialize_tui_layout prototype.
+	* tui/tui-regs.c: Remove _initialize_tui_regs prototype.
+	* tui/tui-stack.c: Remove _initialize_tui_stack prototype.
+	* tui/tui-win.c: Remove _initialize_tui_win prototype.
+	* tui/tui.c: Remove _initialize_tui prototype.
+	* typeprint.c: Remove _initialize_typeprint prototype.
+	* user-regs.c: Remove _initialize_user_regs prototype.
+	* utils.c: Remove _initialize_utils prototype.
+	* v850-tdep.c: Remove _initialize_v850_tdep prototype.
+	* valarith.c: Remove _initialize_valarith prototype.
+	* valops.c: Remove _initialize_valops prototype.
+	* valprint.c: Remove _initialize_valprint prototype.
+	* value.c: Remove _initialize_values prototype.
+	* varobj.c: Remove _initialize_varobj prototype.
+	* vax-bsd-nat.c: Remove _initialize_vaxbsd_nat prototype.
+	* vax-nbsd-tdep.c: Remove _initialize_vaxnbsd_tdep prototype.
+	* vax-tdep.c: Remove _initialize_vax_tdep prototype.
+	* windows-nat.c: Remove _initialize_windows_nat,
+	_initialize_check_for_gdb_ini, and _initialize_loadable
+	prototypes.
+	* windows-tdep.c: Remove _initialize_windows_tdep prototype.
+	* xcoffread.c: Remove _initialize_xcoffread prototype.
+	* xml-support.c: Remove _initialize_xml_support prototype.
+	* xstormy16-tdep.c: Remove _initialize_xstormy16_tdep prototype.
+	* xtensa-linux-nat.c: Remove _initialize_xtensa_linux_nat
+	prototype.
+	* xtensa-linux-tdep.c: Remove _initialize_xtensa_linux_tdep
+	prototype.
+	* xtensa-tdep.c: Remove _initialize_xtensa_tdep prototype.
+
 2017-09-08  Keith Seitz  <keiths@redhat.com>
 
 	* dwarf2read.c (struct field_info) <fnfields>: Remove unused
diff --git a/gdb/aarch64-linux-nat.c b/gdb/aarch64-linux-nat.c
index 3f5b30eaeb..6ad6f663bf 100644
--- a/gdb/aarch64-linux-nat.c
+++ b/gdb/aarch64-linux-nat.c
@@ -801,9 +801,6 @@ triggers a breakpoint or watchpoint."),
 			   &maintenance_show_cmdlist);
 }
 
-/* -Wmissing-prototypes.  */
-void _initialize_aarch64_linux_nat (void);
-
 void
 _initialize_aarch64_linux_nat (void)
 {
diff --git a/gdb/aarch64-linux-tdep.c b/gdb/aarch64-linux-tdep.c
index 847454f1d1..4381359fe0 100644
--- a/gdb/aarch64-linux-tdep.c
+++ b/gdb/aarch64-linux-tdep.c
@@ -1227,9 +1227,6 @@ aarch64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 					    aarch64_displaced_step_hw_singlestep);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_aarch64_linux_tdep;
-
 void
 _initialize_aarch64_linux_tdep (void)
 {
diff --git a/gdb/aarch64-newlib-tdep.c b/gdb/aarch64-newlib-tdep.c
index 52bf993dce..9d9fce1b30 100644
--- a/gdb/aarch64-newlib-tdep.c
+++ b/gdb/aarch64-newlib-tdep.c
@@ -36,9 +36,6 @@ aarch64_newlib_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   tdep->jb_pc = 11;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_aarch64_newlib_tdep;
-
 void
 _initialize_aarch64_newlib_tdep (void)
 {
diff --git a/gdb/aarch64-tdep.c b/gdb/aarch64-tdep.c
index 5a627a3a18..e88889fac8 100644
--- a/gdb/aarch64-tdep.c
+++ b/gdb/aarch64-tdep.c
@@ -3047,9 +3047,6 @@ static void aarch64_process_record_test (void);
 }
 #endif
 
-/* Suppress warning from -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_aarch64_tdep;
-
 void
 _initialize_aarch64_tdep (void)
 {
diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y
index 618c9d540e..4c1ff7b493 100644
--- a/gdb/ada-exp.y
+++ b/gdb/ada-exp.y
@@ -1480,9 +1480,6 @@ type_system_address (struct parser_state *par_state)
   return  type != NULL ? type : parse_type (par_state)->builtin_data_ptr;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_ada_exp;
-
 void
 _initialize_ada_exp (void)
 {
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index 86f09b941a..fdc2a9002c 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -13990,9 +13990,6 @@ extern const struct language_defn ada_language_defn = {
   LANG_MAGIC
 };
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_ada_language;
-
 /* Command-list for the "set/show ada" prefix command.  */
 static struct cmd_list_element *set_ada_list;
 static struct cmd_list_element *show_ada_list;
diff --git a/gdb/ada-tasks.c b/gdb/ada-tasks.c
index cf43f0eb3f..19f74ddac7 100644
--- a/gdb/ada-tasks.c
+++ b/gdb/ada-tasks.c
@@ -1422,9 +1422,6 @@ ada_tasks_new_objfile_observer (struct objfile *objfile)
       ada_tasks_invalidate_inferior_data (inf);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tasks;
-
 void
 _initialize_tasks (void)
 {
diff --git a/gdb/addrmap.c b/gdb/addrmap.c
index 8e6c477d69..93454e6ac1 100644
--- a/gdb/addrmap.c
+++ b/gdb/addrmap.c
@@ -588,13 +588,8 @@ addrmap_create_mutable (struct obstack *obstack)
   return (struct addrmap *) map;
 }
 
-
-
 /* Initialization.  */
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_addrmap;
-
 void
 _initialize_addrmap (void)
 {
diff --git a/gdb/agent.c b/gdb/agent.c
index 6f6af2a1b7..c0f10aa702 100644
--- a/gdb/agent.c
+++ b/gdb/agent.c
@@ -51,9 +51,6 @@ set_can_use_agent (char *args, int from_tty, struct cmd_list_element *c)
     can_use_agent = can_use_agent_off;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_agent;
-
 #include "observer.h"
 #include "objfiles.h"
 
diff --git a/gdb/aix-thread.c b/gdb/aix-thread.c
index f3434a6db6..f9ec864165 100644
--- a/gdb/aix-thread.c
+++ b/gdb/aix-thread.c
@@ -1831,8 +1831,6 @@ init_aix_thread_ops (void)
 /* Module startup initialization function, automagically called by
    init.c.  */
 
-void _initialize_aix_thread (void);
-
 void
 _initialize_aix_thread (void)
 {
diff --git a/gdb/alpha-bsd-nat.c b/gdb/alpha-bsd-nat.c
index 102555344d..8a67bb0514 100644
--- a/gdb/alpha-bsd-nat.c
+++ b/gdb/alpha-bsd-nat.c
@@ -187,9 +187,6 @@ alphabsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 }
 
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_alphabsd_nat (void);
-
 void
 _initialize_alphabsd_nat (void)
 {
diff --git a/gdb/alpha-linux-nat.c b/gdb/alpha-linux-nat.c
index a8f1a1c0a4..b88ffedff8 100644
--- a/gdb/alpha-linux-nat.c
+++ b/gdb/alpha-linux-nat.c
@@ -91,8 +91,6 @@ alpha_linux_register_u_offset (struct gdbarch *gdbarch, int regno, int store_p)
     return FPR_BASE + regno - gdbarch_fp0_regnum (gdbarch);
 }
 
-void _initialize_alpha_linux_nat (void);
-
 void
 _initialize_alpha_linux_nat (void)
 {
diff --git a/gdb/alpha-linux-tdep.c b/gdb/alpha-linux-tdep.c
index 33587b8dcf..1392566fdd 100644
--- a/gdb/alpha-linux-tdep.c
+++ b/gdb/alpha-linux-tdep.c
@@ -388,9 +388,6 @@ alpha_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 				    alpha_linux_gdb_signal_to_target);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_alpha_linux_tdep;
-
 void
 _initialize_alpha_linux_tdep (void)
 {
diff --git a/gdb/alpha-nbsd-tdep.c b/gdb/alpha-nbsd-tdep.c
index 32f11ec49e..a9b372b6f2 100644
--- a/gdb/alpha-nbsd-tdep.c
+++ b/gdb/alpha-nbsd-tdep.c
@@ -276,9 +276,6 @@ alphanbsd_init_abi (struct gdbarch_info info,
 }
 
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_alphanbsd_tdep (void);
-
 void
 _initialize_alphanbsd_tdep (void)
 {
diff --git a/gdb/alpha-obsd-tdep.c b/gdb/alpha-obsd-tdep.c
index 5f125f2a88..461e062e7b 100644
--- a/gdb/alpha-obsd-tdep.c
+++ b/gdb/alpha-obsd-tdep.c
@@ -126,9 +126,6 @@ alphaobsd_init_abi(struct gdbarch_info info, struct gdbarch *gdbarch)
 }
 
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_alphaobsd_tdep (void);
-
 void
 _initialize_alphaobsd_tdep (void)
 {
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
index 06ee90cbc7..e66517d21c 100644
--- a/gdb/alpha-tdep.c
+++ b/gdb/alpha-tdep.c
@@ -1850,8 +1850,6 @@ alpha_dwarf2_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   frame_base_append_sniffer (gdbarch, dwarf2_frame_base_sniffer);
 }
 
-extern initialize_file_ftype _initialize_alpha_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_alpha_tdep (void)
 {
diff --git a/gdb/amd64-darwin-tdep.c b/gdb/amd64-darwin-tdep.c
index 81dba82102..7f6cb94ad6 100644
--- a/gdb/amd64-darwin-tdep.c
+++ b/gdb/amd64-darwin-tdep.c
@@ -117,9 +117,6 @@ x86_darwin_init_abi_64 (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_ops (gdbarch, &darwin_so_ops);
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_amd64_darwin_tdep;
-
 void
 _initialize_amd64_darwin_tdep (void)
 {
diff --git a/gdb/amd64-dicos-tdep.c b/gdb/amd64-dicos-tdep.c
index d319dd928f..99a77a0f7d 100644
--- a/gdb/amd64-dicos-tdep.c
+++ b/gdb/amd64-dicos-tdep.c
@@ -46,9 +46,6 @@ amd64_dicos_osabi_sniffer (bfd *abfd)
   return GDB_OSABI_UNKNOWN;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64_dicos_tdep (void);
-
 void
 _initialize_amd64_dicos_tdep (void)
 {
diff --git a/gdb/amd64-fbsd-nat.c b/gdb/amd64-fbsd-nat.c
index 107b4f8fb0..f47e806bd6 100644
--- a/gdb/amd64-fbsd-nat.c
+++ b/gdb/amd64-fbsd-nat.c
@@ -185,9 +185,6 @@ amd64fbsd_read_description (struct target_ops *ops)
     return i386_target_description (X86_XSTATE_SSE_MASK);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64fbsd_nat (void);
-
 void
 _initialize_amd64fbsd_nat (void)
 {
diff --git a/gdb/amd64-fbsd-tdep.c b/gdb/amd64-fbsd-tdep.c
index 897cab945f..0047e2ce24 100644
--- a/gdb/amd64-fbsd-tdep.c
+++ b/gdb/amd64-fbsd-tdep.c
@@ -240,10 +240,6 @@ amd64fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_lp64_fetch_link_map_offsets);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64fbsd_tdep (void);
 
 void
 _initialize_amd64fbsd_tdep (void)
diff --git a/gdb/amd64-linux-nat.c b/gdb/amd64-linux-nat.c
index d24c028d21..a83ad8b1ea 100644
--- a/gdb/amd64-linux-nat.c
+++ b/gdb/amd64-linux-nat.c
@@ -396,9 +396,6 @@ amd64_linux_siginfo_fixup (siginfo_t *ptrace, gdb_byte *inf, int direction)
     return 0;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64_linux_nat (void);
-
 void
 _initialize_amd64_linux_nat (void)
 {
diff --git a/gdb/amd64-linux-tdep.c b/gdb/amd64-linux-tdep.c
index 89d3b6a7da..87f09a4542 100644
--- a/gdb/amd64-linux-tdep.c
+++ b/gdb/amd64-linux-tdep.c
@@ -2265,10 +2265,6 @@ amd64_x32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_amd64_linux_tdep (void);
 
 void
 _initialize_amd64_linux_tdep (void)
diff --git a/gdb/amd64-nbsd-nat.c b/gdb/amd64-nbsd-nat.c
index 560ae89c7f..73b737c1b8 100644
--- a/gdb/amd64-nbsd-nat.c
+++ b/gdb/amd64-nbsd-nat.c
@@ -52,10 +52,6 @@ static int amd64nbsd32_r_reg_offset[] =
   16 * 8,			/* %fs */
   15 * 8			/* %gs */
 };
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64nbsd_nat (void);
 
 void
 _initialize_amd64nbsd_nat (void)
diff --git a/gdb/amd64-nbsd-tdep.c b/gdb/amd64-nbsd-tdep.c
index 9ae022729f..6c4b6cc99f 100644
--- a/gdb/amd64-nbsd-tdep.c
+++ b/gdb/amd64-nbsd-tdep.c
@@ -119,10 +119,6 @@ amd64nbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_lp64_fetch_link_map_offsets);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64nbsd_tdep (void);
 
 void
 _initialize_amd64nbsd_tdep (void)
diff --git a/gdb/amd64-obsd-nat.c b/gdb/amd64-obsd-nat.c
index 1c46581f8b..8d05aaf43e 100644
--- a/gdb/amd64-obsd-nat.c
+++ b/gdb/amd64-obsd-nat.c
@@ -124,10 +124,6 @@ amd64obsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 
   return 1;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64obsd_nat (void);
 
 void
 _initialize_amd64obsd_nat (void)
diff --git a/gdb/amd64-obsd-tdep.c b/gdb/amd64-obsd-tdep.c
index 54942cc715..729342e2de 100644
--- a/gdb/amd64-obsd-tdep.c
+++ b/gdb/amd64-obsd-tdep.c
@@ -447,10 +447,6 @@ amd64obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   /* Unwind kernel trap frames correctly.  */
   frame_unwind_prepend_unwinder (gdbarch, &amd64obsd_trapframe_unwind);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64obsd_tdep (void);
 
 void
 _initialize_amd64obsd_tdep (void)
diff --git a/gdb/amd64-sol2-tdep.c b/gdb/amd64-sol2-tdep.c
index 1ae2edc633..b44e5f1f06 100644
--- a/gdb/amd64-sol2-tdep.c
+++ b/gdb/amd64-sol2-tdep.c
@@ -116,10 +116,6 @@ amd64_sol2_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   /* How to print LWP PTIDs from core files.  */
   set_gdbarch_core_pid_to_str (gdbarch, sol2_core_pid_to_str);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_amd64_sol2_tdep (void);
 
 void
 _initialize_amd64_sol2_tdep (void)
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
index d459eb2f28..f1e2078ef5 100644
--- a/gdb/amd64-tdep.c
+++ b/gdb/amd64-tdep.c
@@ -3221,9 +3221,6 @@ amd64_target_description (uint64_t xcr0)
   return *tdesc;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_amd64_tdep (void);
-
 void
 _initialize_amd64_tdep (void)
 {
diff --git a/gdb/amd64-windows-nat.c b/gdb/amd64-windows-nat.c
index fd79bfc16d..2a90d6a4df 100644
--- a/gdb/amd64-windows-nat.c
+++ b/gdb/amd64-windows-nat.c
@@ -95,9 +95,6 @@ amd64_windows_segment_register_p (int regnum)
   return regnum >= AMD64_CS_REGNUM && regnum <= AMD64_GS_REGNUM;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_amd64_windows_nat;
-
 void
 _initialize_amd64_windows_nat (void)
 {
diff --git a/gdb/amd64-windows-tdep.c b/gdb/amd64-windows-tdep.c
index 5ac73bd8c9..975c6848a4 100644
--- a/gdb/amd64-windows-tdep.c
+++ b/gdb/amd64-windows-tdep.c
@@ -1245,9 +1245,6 @@ amd64_windows_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_gdbarch_auto_wide_charset (gdbarch, amd64_windows_auto_wide_charset);
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_amd64_windows_tdep;
-
 void
 _initialize_amd64_windows_tdep (void)
 {
diff --git a/gdb/annotate.c b/gdb/annotate.c
index 426005adba..f68ff1098f 100644
--- a/gdb/annotate.c
+++ b/gdb/annotate.c
@@ -30,8 +30,6 @@
 
 /* Prototypes for local functions.  */
 
-extern void _initialize_annotate (void);
-
 static void print_value_flags (struct type *);
 
 static void breakpoint_changed (struct breakpoint *b);
diff --git a/gdb/arc-newlib-tdep.c b/gdb/arc-newlib-tdep.c
index a6a232f095..50a1bce4d1 100644
--- a/gdb/arc-newlib-tdep.c
+++ b/gdb/arc-newlib-tdep.c
@@ -56,9 +56,6 @@ arc_newlib_osabi_sniffer (bfd *abfd)
     return GDB_OSABI_UNKNOWN;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_arc_newlib_tdep;
-
 void
 _initialize_arc_newlib_tdep (void)
 {
diff --git a/gdb/arc-tdep.c b/gdb/arc-tdep.c
index 21f70156bf..31c7b569e9 100644
--- a/gdb/arc-tdep.c
+++ b/gdb/arc-tdep.c
@@ -2135,9 +2135,6 @@ dump_arc_instruction_command (char *args, int from_tty)
   arc_insn_dump (insn);
 }
 
-/* Suppress warning from -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_arc_tdep;
-
 void
 _initialize_arc_tdep (void)
 {
diff --git a/gdb/arch-utils.c b/gdb/arch-utils.c
index 4e0fdf4a68..02ffd6b574 100644
--- a/gdb/arch-utils.c
+++ b/gdb/arch-utils.c
@@ -996,9 +996,6 @@ gdbarch_skip_prologue_noexcept (gdbarch *gdbarch, CORE_ADDR pc) noexcept
   return new_pc;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_gdbarch_utils;
-
 void
 _initialize_gdbarch_utils (void)
 {
diff --git a/gdb/arm-linux-nat.c b/gdb/arm-linux-nat.c
index 4039d1e8d8..fc66063ce5 100644
--- a/gdb/arm-linux-nat.c
+++ b/gdb/arm-linux-nat.c
@@ -1283,8 +1283,6 @@ arm_linux_new_fork (struct lwp_info *parent, pid_t child_pid)
   *child_state = *parent_state;
 }
 
-void _initialize_arm_linux_nat (void);
-
 void
 _initialize_arm_linux_nat (void)
 {
diff --git a/gdb/arm-linux-tdep.c b/gdb/arm-linux-tdep.c
index 95c52608ad..f3ca8f7eb6 100644
--- a/gdb/arm-linux-tdep.c
+++ b/gdb/arm-linux-tdep.c
@@ -1996,9 +1996,6 @@ arm_linux_init_abi (struct gdbarch_info info,
   arm_linux_record_tdep.arg7 = ARM_A1_REGNUM + 6;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_arm_linux_tdep;
-
 void
 _initialize_arm_linux_tdep (void)
 {
diff --git a/gdb/arm-nbsd-tdep.c b/gdb/arm-nbsd-tdep.c
index 92d368ccec..09780d88a4 100644
--- a/gdb/arm-nbsd-tdep.c
+++ b/gdb/arm-nbsd-tdep.c
@@ -85,9 +85,6 @@ arm_netbsd_elf_init_abi (struct gdbarch_info info,
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_arm_netbsd_tdep;
-
 void
 _initialize_arm_netbsd_tdep (void)
 {
diff --git a/gdb/arm-obsd-tdep.c b/gdb/arm-obsd-tdep.c
index 6db5487020..66e648888f 100644
--- a/gdb/arm-obsd-tdep.c
+++ b/gdb/arm-obsd-tdep.c
@@ -114,10 +114,6 @@ armobsd_init_abi (struct gdbarch_info info,
       break;
     }
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_armobsd_tdep;
 
 void
 _initialize_armobsd_tdep (void)
diff --git a/gdb/arm-symbian-tdep.c b/gdb/arm-symbian-tdep.c
index f55e12e089..061fd1fd67 100644
--- a/gdb/arm-symbian-tdep.c
+++ b/gdb/arm-symbian-tdep.c
@@ -119,9 +119,6 @@ arm_symbian_osabi_sniffer (bfd *abfd)
   return GDB_OSABI_SYMBIAN;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_arm_symbian_tdep;
-
 void
 _initialize_arm_symbian_tdep (void)
 {
diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
index 0c1a0b3294..6dda13dda0 100644
--- a/gdb/arm-tdep.c
+++ b/gdb/arm-tdep.c
@@ -9589,8 +9589,6 @@ static void arm_record_test (void);
 }
 #endif
 
-extern initialize_file_ftype _initialize_arm_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_arm_tdep (void)
 {
diff --git a/gdb/arm-wince-tdep.c b/gdb/arm-wince-tdep.c
index 76bf08fd60..786c39a826 100644
--- a/gdb/arm-wince-tdep.c
+++ b/gdb/arm-wince-tdep.c
@@ -154,9 +154,6 @@ arm_wince_osabi_sniffer (bfd *abfd)
   return GDB_OSABI_UNKNOWN;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_arm_wince_tdep (void);
-
 void
 _initialize_arm_wince_tdep (void)
 {
diff --git a/gdb/auto-load.c b/gdb/auto-load.c
index 5bba813659..ddd060182f 100644
--- a/gdb/auto-load.c
+++ b/gdb/auto-load.c
@@ -1567,8 +1567,6 @@ found and/or loaded."),
   return &retval;
 }
 
-void _initialize_auto_load (void);
-
 void
 _initialize_auto_load (void)
 {
diff --git a/gdb/auxv.c b/gdb/auxv.c
index 3daf525814..95cbeecd79 100644
--- a/gdb/auxv.c
+++ b/gdb/auxv.c
@@ -567,9 +567,6 @@ info_auxv_command (char *cmd, int from_tty)
     }
 }
 
-
-extern initialize_file_ftype _initialize_auxv; /* -Wmissing-prototypes; */
-
 void
 _initialize_auxv (void)
 {
diff --git a/gdb/avr-tdep.c b/gdb/avr-tdep.c
index 7867c2fabe..6818f334e7 100644
--- a/gdb/avr-tdep.c
+++ b/gdb/avr-tdep.c
@@ -1615,8 +1615,6 @@ avr_io_reg_read_command (char *args, int from_tty)
     }
 }
 
-extern initialize_file_ftype _initialize_avr_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_avr_tdep (void)
 {
diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c
index 2b5e481dc0..c888e8ca41 100644
--- a/gdb/ax-gdb.c
+++ b/gdb/ax-gdb.c
@@ -2756,11 +2756,9 @@ maint_agent_printf_command (char *exp, int from_tty)
   do_cleanups (old_chain);
   dont_repeat ();
 }
-
 
 /* Initialization code.  */
 
-void _initialize_ax_gdb (void);
 void
 _initialize_ax_gdb (void)
 {
diff --git a/gdb/bfin-linux-tdep.c b/gdb/bfin-linux-tdep.c
index cd877699b5..39ef2c89bd 100644
--- a/gdb/bfin-linux-tdep.c
+++ b/gdb/bfin-linux-tdep.c
@@ -161,9 +161,6 @@ bfin_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
                                   bfin_linux_get_syscall_number);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_bfin_linux_tdep;
-
 void
 _initialize_bfin_linux_tdep (void)
 {
diff --git a/gdb/bfin-tdep.c b/gdb/bfin-tdep.c
index aa9efebe2f..2e99418a32 100644
--- a/gdb/bfin-tdep.c
+++ b/gdb/bfin-tdep.c
@@ -851,9 +851,6 @@ bfin_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_bfin_tdep;
-
 void
 _initialize_bfin_tdep (void)
 {
diff --git a/gdb/break-catch-sig.c b/gdb/break-catch-sig.c
index 9b8cf64950..805084fda1 100644
--- a/gdb/break-catch-sig.c
+++ b/gdb/break-catch-sig.c
@@ -423,8 +423,6 @@ initialize_signal_catchpoint_ops (void)
   ops->explains_signal = signal_catchpoint_explains_signal;
 }
 
-initialize_file_ftype _initialize_break_catch_sig;
-
 void
 _initialize_break_catch_sig (void)
 {
diff --git a/gdb/break-catch-syscall.c b/gdb/break-catch-syscall.c
index 1be29bea62..01e761ce37 100644
--- a/gdb/break-catch-syscall.c
+++ b/gdb/break-catch-syscall.c
@@ -635,8 +635,6 @@ initialize_syscall_catchpoint_ops (void)
   ops->print_recreate = print_recreate_catch_syscall;
 }
 
-initialize_file_ftype _initialize_break_catch_syscall;
-
 void
 _initialize_break_catch_syscall (void)
 {
diff --git a/gdb/break-catch-throw.c b/gdb/break-catch-throw.c
index da06baa026..c8612db120 100644
--- a/gdb/break-catch-throw.c
+++ b/gdb/break-catch-throw.c
@@ -537,8 +537,6 @@ initialize_throw_catchpoint_ops (void)
   ops->check_status = check_status_exception_catchpoint;
 }
 
-initialize_file_ftype _initialize_break_catch_throw;
-
 void
 _initialize_break_catch_throw (void)
 {
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 778a011161..4b329b9bfe 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -551,8 +551,6 @@ gdb_evaluates_breakpoint_condition_p (void)
   return (mode == condition_evaluation_host);
 }
 
-void _initialize_breakpoint (void);
-
 /* Are we executing breakpoint commands?  */
 static int executing_breakpoint_commands;
 
diff --git a/gdb/bsd-uthread.c b/gdb/bsd-uthread.c
index 92497003a8..c97dd34592 100644
--- a/gdb/bsd-uthread.c
+++ b/gdb/bsd-uthread.c
@@ -547,9 +547,6 @@ bsd_uthread_target (void)
   return t;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_bsd_uthread;
-
 void
 _initialize_bsd_uthread (void)
 {
diff --git a/gdb/btrace.c b/gdb/btrace.c
index d9810f3687..8527c6fd12 100644
--- a/gdb/btrace.c
+++ b/gdb/btrace.c
@@ -3484,7 +3484,6 @@ show_maint_btrace_pt_skip_pad  (struct ui_file *file, int from_tty,
 
 /* Initialize btrace maintenance commands.  */
 
-void _initialize_btrace (void);
 void
 _initialize_btrace (void)
 {
diff --git a/gdb/charset.c b/gdb/charset.c
index be95bbe11c..cc74331058 100644
--- a/gdb/charset.c
+++ b/gdb/charset.c
@@ -705,11 +705,8 @@ wchar_iterator::iterate (enum wchar_iterate_result *out_result,
   return -1;
 }
 
-
 /* The charset.c module initialization function.  */
 
-extern initialize_file_ftype _initialize_charset; /* -Wmissing-prototype */
-
 static VEC (char_ptr) *charsets;
 
 #ifdef PHONY_ICONV
diff --git a/gdb/cli/cli-cmds.c b/gdb/cli/cli-cmds.c
index b79ceb2c3c..a2041fa509 100644
--- a/gdb/cli/cli-cmds.c
+++ b/gdb/cli/cli-cmds.c
@@ -1665,10 +1665,6 @@ show_max_user_call_depth (struct ui_file *file, int from_tty,
 		    value);
 }
 
-
-
-initialize_file_ftype _initialize_cli_cmds;
-
 void
 _initialize_cli_cmds (void)
 {
diff --git a/gdb/cli/cli-dump.c b/gdb/cli/cli-dump.c
index 30897d8df7..8e59ed4f23 100644
--- a/gdb/cli/cli-dump.c
+++ b/gdb/cli/cli-dump.c
@@ -623,8 +623,6 @@ binary_append_command (char *cmd, int from_tty)
 	     gdb_stdout);
 }
 
-extern initialize_file_ftype _initialize_cli_dump; /* -Wmissing-prototypes */
-
 void
 _initialize_cli_dump (void)
 {
diff --git a/gdb/cli/cli-interp.c b/gdb/cli/cli-interp.c
index 8712c75f39..609a419fe8 100644
--- a/gdb/cli/cli-interp.c
+++ b/gdb/cli/cli-interp.c
@@ -458,7 +458,6 @@ cli_interp_factory (const char *name)
 }
 
 /* Standard gdb initialization hook.  */
-extern initialize_file_ftype _initialize_cli_interp; /* -Wmissing-prototypes */
 
 void
 _initialize_cli_interp (void)
diff --git a/gdb/cli/cli-logging.c b/gdb/cli/cli-logging.c
index e8ec4449b9..67005a17ef 100644
--- a/gdb/cli/cli-logging.c
+++ b/gdb/cli/cli-logging.c
@@ -203,9 +203,6 @@ show_logging_command (char *args, int from_tty)
     printf_unfiltered (_("Output will be logged and displayed.\n"));
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_cli_logging;
-
 void
 _initialize_cli_logging (void)
 {
diff --git a/gdb/cli/cli-script.c b/gdb/cli/cli-script.c
index 1757e4e196..9b2ffd06b1 100644
--- a/gdb/cli/cli-script.c
+++ b/gdb/cli/cli-script.c
@@ -1618,10 +1618,6 @@ show_user_1 (struct cmd_list_element *c, const char *prefix, const char *name,
   fputs_filtered ("\n", stream);
 }
 
-
-
-initialize_file_ftype _initialize_cli_script;
-
 void
 _initialize_cli_script (void)
 {
diff --git a/gdb/coff-pe-read.c b/gdb/coff-pe-read.c
index e8c6b67d62..0aab8016db 100644
--- a/gdb/coff-pe-read.c
+++ b/gdb/coff-pe-read.c
@@ -698,10 +698,6 @@ show_debug_coff_pe_read (struct ui_file *file, int from_tty,
   fprintf_filtered (file, _("Coff PE read debugging is %s.\n"), value);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-
-void _initialize_coff_pe_read (void);
-
 /* Adds "Set/show debug coff_pe_read" commands.  */
 
 void
diff --git a/gdb/coffread.c b/gdb/coffread.c
index 9db4792557..4b5edf0919 100644
--- a/gdb/coffread.c
+++ b/gdb/coffread.c
@@ -43,8 +43,6 @@
 #include "psymtab.h"
 #include "build-id.h"
 
-extern void _initialize_coffread (void);
-
 /* Key for COFF-associated data.  */
 
 static const struct objfile_data *coff_objfile_data_key;
diff --git a/gdb/compile/compile.c b/gdb/compile/compile.c
index e4865d0723..fc23d126ef 100644
--- a/gdb/compile/compile.c
+++ b/gdb/compile/compile.c
@@ -675,8 +675,6 @@ compile_register_name_demangle (struct gdbarch *gdbarch,
   error (_("Cannot find gdbarch register \"%s\"."), regname);
 }
 
-extern initialize_file_ftype _initialize_compile;
-
 void
 _initialize_compile (void)
 {
diff --git a/gdb/complaints.c b/gdb/complaints.c
index dc60dc3be3..aba305c729 100644
--- a/gdb/complaints.c
+++ b/gdb/complaints.c
@@ -22,8 +22,6 @@
 #include "command.h"
 #include "gdbcmd.h"
 
-extern void _initialize_complaints (void);
-
 /* Should each complaint message be self explanatory, or should we
    assume that a series of complaints is being produced?  */
 
diff --git a/gdb/completer.c b/gdb/completer.c
index a029263746..5d81f24bdd 100644
--- a/gdb/completer.c
+++ b/gdb/completer.c
@@ -2775,8 +2775,6 @@ gdb_display_match_list (char **matches, int len, int max,
 	}
     }
 }
-
-extern initialize_file_ftype _initialize_completer; /* -Wmissing-prototypes */
 
 void
 _initialize_completer (void)
diff --git a/gdb/copying.awk b/gdb/copying.awk
index 1801997db1..2a71939a6f 100644
--- a/gdb/copying.awk
+++ b/gdb/copying.awk
@@ -14,8 +14,6 @@ BEGIN	{
 	  print ""
 	  print "static void show_warranty_command (char *, int);"
 	  print ""
-	  print "void _initialize_copying (void);"
-	  print ""
 	  print "static void";
 	  print "show_copying_command (char *ignore, int from_tty)";
 	  print "{";
diff --git a/gdb/copying.c b/gdb/copying.c
index 66837b87fd..db024627cd 100644
--- a/gdb/copying.c
+++ b/gdb/copying.c
@@ -10,8 +10,6 @@ static void show_copying_command (char *, int);
 
 static void show_warranty_command (char *, int);
 
-void _initialize_copying (void);
-
 static void
 show_copying_command (char *ignore, int from_tty)
 {
diff --git a/gdb/core-regset.c b/gdb/core-regset.c
index 278887be8f..9d2b91457a 100644
--- a/gdb/core-regset.c
+++ b/gdb/core-regset.c
@@ -111,9 +111,6 @@ static struct core_fns regset_core_fns =
   NULL					/* next */
 };
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_core_regset (void);
-
 void
 _initialize_core_regset (void)
 {
diff --git a/gdb/corefile.c b/gdb/corefile.c
index 0996f9c021..da3f72ffe6 100644
--- a/gdb/corefile.c
+++ b/gdb/corefile.c
@@ -33,10 +33,6 @@
 #include "observer.h"
 #include "cli/cli-utils.h"
 
-/* Local function declarations.  */
-
-extern void _initialize_core (void);
-
 /* You can have any number of hooks for `exec_file_command' command to
    call.  If there's only one hook, it is set in exec_file_display
    hook.  If there are two or more hooks, they are set in
diff --git a/gdb/corelow.c b/gdb/corelow.c
index ac7226821c..594db1d6f2 100644
--- a/gdb/corelow.c
+++ b/gdb/corelow.c
@@ -88,8 +88,6 @@ static void add_to_thread_list (bfd *, asection *, void *);
 
 static void init_core_ops (void);
 
-void _initialize_corelow (void);
-
 static struct target_ops core_ops;
 
 /* An arbitrary identifier for the core inferior.  */
diff --git a/gdb/cp-abi.c b/gdb/cp-abi.c
index f4cf9448d3..49fab32561 100644
--- a/gdb/cp-abi.c
+++ b/gdb/cp-abi.c
@@ -390,8 +390,6 @@ show_cp_abi_cmd (char *args, int from_tty)
   uiout->text (").\n");
 }
 
-extern initialize_file_ftype _initialize_cp_abi; /* -Wmissing-prototypes */
-
 void
 _initialize_cp_abi (void)
 {
diff --git a/gdb/cp-namespace.c b/gdb/cp-namespace.c
index c7b5aa8d45..f27783ae5a 100644
--- a/gdb/cp-namespace.c
+++ b/gdb/cp-namespace.c
@@ -1082,9 +1082,6 @@ maintenance_cplus_namespace (char *args, int from_tty)
   printf_unfiltered (_("The `maint namespace' command was removed.\n"));
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_cp_namespace;
-
 void
 _initialize_cp_namespace (void)
 {
diff --git a/gdb/cp-support.c b/gdb/cp-support.c
index 8bcbe657a4..11318efbcb 100644
--- a/gdb/cp-support.c
+++ b/gdb/cp-support.c
@@ -1628,9 +1628,6 @@ first_component_command (char *arg, int from_tty)
   printf_unfiltered ("%s\n", prefix);
 }
 
-extern initialize_file_ftype _initialize_cp_support; /* -Wmissing-prototypes */
-
-
 /* Implement "info vtbl".  */
 
 static void
diff --git a/gdb/cp-valprint.c b/gdb/cp-valprint.c
index af70421fd7..fb9bfd904f 100644
--- a/gdb/cp-valprint.c
+++ b/gdb/cp-valprint.c
@@ -74,8 +74,6 @@ static struct obstack dont_print_vb_obstack;
 static struct obstack dont_print_statmem_obstack;
 static struct obstack dont_print_stat_array_obstack;
 
-extern void _initialize_cp_valprint (void);
-
 static void cp_print_static_field (struct type *, struct value *,
 				   struct ui_file *, int,
 				   const struct value_print_options *);
diff --git a/gdb/cris-linux-tdep.c b/gdb/cris-linux-tdep.c
index 896a35e098..9219a97e40 100644
--- a/gdb/cris-linux-tdep.c
+++ b/gdb/cris-linux-tdep.c
@@ -46,9 +46,6 @@ cris_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_cris_linux_tdep;
-
 void
 _initialize_cris_linux_tdep (void)
 {
diff --git a/gdb/cris-tdep.c b/gdb/cris-tdep.c
index 85a12e25b1..d64c99ac81 100644
--- a/gdb/cris-tdep.c
+++ b/gdb/cris-tdep.c
@@ -3866,8 +3866,6 @@ static struct core_fns cris_elf_core_fns =
   NULL                                  /* next */
 };
 
-extern initialize_file_ftype _initialize_cris_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_cris_tdep (void)
 {
diff --git a/gdb/ctf.c b/gdb/ctf.c
index 82e7013f97..46a1bb52c3 100644
--- a/gdb/ctf.c
+++ b/gdb/ctf.c
@@ -1731,10 +1731,6 @@ Specify the filename of the CTF directory.";
 
 #endif
 
-/* -Wmissing-prototypes */
-
-extern initialize_file_ftype _initialize_ctf;
-
 /* module initialization */
 
 void
diff --git a/gdb/d-lang.c b/gdb/d-lang.c
index 941d3ed4c5..277df012b3 100644
--- a/gdb/d-lang.c
+++ b/gdb/d-lang.c
@@ -342,9 +342,6 @@ builtin_d_type (struct gdbarch *gdbarch)
   return (const struct builtin_d_type *) gdbarch_data (gdbarch, d_type_data);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_d_language;
-
 void
 _initialize_d_language (void)
 {
diff --git a/gdb/darwin-nat-info.c b/gdb/darwin-nat-info.c
index 91bc5b3d54..c15c2fd574 100644
--- a/gdb/darwin-nat-info.c
+++ b/gdb/darwin-nat-info.c
@@ -841,9 +841,6 @@ info_mach_exceptions_command (char *args, int from_tty)
     }
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_darwin_info_commands;
-
 void
 _initialize_darwin_info_commands (void)
 {
diff --git a/gdb/darwin-nat.c b/gdb/darwin-nat.c
index b721da86b8..e96f24dd63 100644
--- a/gdb/darwin-nat.c
+++ b/gdb/darwin-nat.c
@@ -2338,9 +2338,6 @@ darwin_supports_multi_process (struct target_ops *self)
   return 1;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_darwin_inferior;
-
 void
 _initialize_darwin_inferior (void)
 {
diff --git a/gdb/dbxread.c b/gdb/dbxread.c
index daa3ce9f81..95b89f9493 100644
--- a/gdb/dbxread.c
+++ b/gdb/dbxread.c
@@ -249,8 +249,6 @@ static int bincls_allocated;
 
 /* Local function prototypes.  */
 
-extern void _initialize_dbxread (void);
-
 static void read_ofile_symtab (struct objfile *, struct partial_symtab *);
 
 static void dbx_read_symtab (struct partial_symtab *self,
diff --git a/gdb/dcache.c b/gdb/dcache.c
index cec1a81e30..891fa02fbd 100644
--- a/gdb/dcache.c
+++ b/gdb/dcache.c
@@ -127,8 +127,6 @@ static struct dcache_block *dcache_alloc (DCACHE *dcache, CORE_ADDR addr);
 
 static void info_dcache_command (char *exp, int tty);
 
-void _initialize_dcache (void);
-
 static int dcache_enabled_p = 0; /* OBSOLETE */
 
 static void
diff --git a/gdb/demangle.c b/gdb/demangle.c
index 882356992e..d034f4e3fa 100644
--- a/gdb/demangle.c
+++ b/gdb/demangle.c
@@ -217,8 +217,6 @@ demangle_command (char *args, int from_tty)
     error (_("Can't demangle \"%s\""), name);
 }
 
-extern initialize_file_ftype _initialize_demangler; /* -Wmissing-prototypes */
-
 void
 _initialize_demangler (void)
 {
diff --git a/gdb/disasm-selftests.c b/gdb/disasm-selftests.c
index 4d38ccf251..bc2f7b7806 100644
--- a/gdb/disasm-selftests.c
+++ b/gdb/disasm-selftests.c
@@ -207,9 +207,6 @@ memory_error_test (struct gdbarch *gdbarch)
 } // namespace selftests
 #endif /* GDB_SELF_TEST */
 
-/* Suppress warning from -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_disasm_selftests;
-
 void
 _initialize_disasm_selftests (void)
 {
diff --git a/gdb/disasm.c b/gdb/disasm.c
index c3528e006f..8061b60380 100644
--- a/gdb/disasm.c
+++ b/gdb/disasm.c
@@ -1052,9 +1052,6 @@ disassembler_options_completer (struct cmd_list_element *ignore,
 
 /* Initialization code.  */
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_disasm;
-
 void
 _initialize_disasm (void)
 {
diff --git a/gdb/dtrace-probe.c b/gdb/dtrace-probe.c
index c611b16375..c1a8cb02d3 100644
--- a/gdb/dtrace-probe.c
+++ b/gdb/dtrace-probe.c
@@ -908,8 +908,6 @@ info_probes_dtrace_command (char *arg, int from_tty)
   info_probes_for_ops (arg, from_tty, &dtrace_probe_ops);
 }
 
-void _initialize_dtrace_probe (void);
-
 void
 _initialize_dtrace_probe (void)
 {
diff --git a/gdb/dummy-frame.c b/gdb/dummy-frame.c
index 2a84b28ee7..8dc4c9be0f 100644
--- a/gdb/dummy-frame.c
+++ b/gdb/dummy-frame.c
@@ -417,8 +417,6 @@ maintenance_print_dummy_frames (char *args, int from_tty)
     }
 }
 
-extern void _initialize_dummy_frame (void);
-
 void
 _initialize_dummy_frame (void)
 {
diff --git a/gdb/dwarf2-frame-tailcall.c b/gdb/dwarf2-frame-tailcall.c
index 310fc4df6c..b46bccddb9 100644
--- a/gdb/dwarf2-frame-tailcall.c
+++ b/gdb/dwarf2-frame-tailcall.c
@@ -464,9 +464,6 @@ const struct frame_unwind dwarf2_tailcall_frame_unwind =
   tailcall_frame_prev_arch
 };
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tailcall_frame;
-
 void
 _initialize_tailcall_frame (void)
 {
diff --git a/gdb/dwarf2-frame.c b/gdb/dwarf2-frame.c
index aaf3aee33d..64ae586492 100644
--- a/gdb/dwarf2-frame.c
+++ b/gdb/dwarf2-frame.c
@@ -2396,9 +2396,6 @@ dwarf2_build_frame_info (struct objfile *objfile)
   set_objfile_data (objfile, dwarf2_frame_objfile_data, fde_table2);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_dwarf2_frame (void);
-
 void
 _initialize_dwarf2_frame (void)
 {
diff --git a/gdb/dwarf2expr.c b/gdb/dwarf2expr.c
index a693856ef5..e2724da05c 100644
--- a/gdb/dwarf2expr.c
+++ b/gdb/dwarf2expr.c
@@ -1445,9 +1445,6 @@ abort_expression:
   gdb_assert (this->recursion_depth >= 0);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_dwarf2expr;
-
 void
 _initialize_dwarf2expr (void)
 {
diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
index 1a1b06a1b2..ded9e00b4f 100644
--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -4667,9 +4667,6 @@ const struct symbol_computed_ops dwarf2_loclist_funcs = {
   loclist_generate_c_location
 };
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_dwarf2loc;
-
 void
 _initialize_dwarf2loc (void)
 {
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 201a8575d8..30b0fe8412 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -24104,8 +24104,6 @@ show_check_physname (struct ui_file *file, int from_tty,
 		    value);
 }
 
-void _initialize_dwarf2_read (void);
-
 void
 _initialize_dwarf2_read (void)
 {
diff --git a/gdb/elfread.c b/gdb/elfread.c
index ae84e43837..f3d464120f 100644
--- a/gdb/elfread.c
+++ b/gdb/elfread.c
@@ -48,8 +48,6 @@
 #include "location.h"
 #include "auxv.h"
 
-extern void _initialize_elfread (void);
-
 /* Forward declarations.  */
 extern const struct sym_fns elf_sym_fns_gdb_index;
 extern const struct sym_fns elf_sym_fns_lazy_psyms;
diff --git a/gdb/exec.c b/gdb/exec.c
index 92c87e4e02..d20afdce29 100644
--- a/gdb/exec.c
+++ b/gdb/exec.c
@@ -57,8 +57,6 @@ static void exec_files_info (struct target_ops *);
 
 static void init_exec_ops (void);
 
-void _initialize_exec (void);
-
 /* The target vector for executable files.  */
 
 static struct target_ops exec_ops;
diff --git a/gdb/extension.c b/gdb/extension.c
index cfbae2c339..54ce4a22ba 100644
--- a/gdb/extension.c
+++ b/gdb/extension.c
@@ -1061,8 +1061,6 @@ ext_lang_before_prompt (const char *current_gdb_prompt)
     }
 }
 
-extern initialize_file_ftype _initialize_extension;
-
 void
 _initialize_extension (void)
 {
diff --git a/gdb/f-lang.c b/gdb/f-lang.c
index 903cfd169e..54f665d007 100644
--- a/gdb/f-lang.c
+++ b/gdb/f-lang.c
@@ -37,8 +37,6 @@
 
 /* Local functions */
 
-extern void _initialize_f_language (void);
-
 static void f_printchar (int c, struct type *type, struct ui_file * stream);
 static void f_emit_char (int c, struct type *type,
 			 struct ui_file * stream, int quoter);
diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c
index 8fc894ae62..5bcab9d525 100644
--- a/gdb/f-valprint.c
+++ b/gdb/f-valprint.c
@@ -34,7 +34,6 @@
 #include "block.h"
 #include "dictionary.h"
 
-extern void _initialize_f_valprint (void);
 static void info_common_command (char *, int);
 static void f77_get_dynamic_length_of_aggregate (struct type *);
 
diff --git a/gdb/fbsd-nat.c b/gdb/fbsd-nat.c
index 80e0eca111..5ad0dda5b4 100644
--- a/gdb/fbsd-nat.c
+++ b/gdb/fbsd-nat.c
@@ -1216,9 +1216,6 @@ fbsd_nat_add_target (struct target_ops *t)
   add_target (t);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_fbsd_nat;
-
 void
 _initialize_fbsd_nat (void)
 {
diff --git a/gdb/fbsd-tdep.c b/gdb/fbsd-tdep.c
index 6f30197a83..1908269632 100644
--- a/gdb/fbsd-tdep.c
+++ b/gdb/fbsd-tdep.c
@@ -524,9 +524,6 @@ fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_gdbarch_get_syscall_number (gdbarch, fbsd_get_syscall_number);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_fbsd_tdep;
-
 void
 _initialize_fbsd_tdep (void)
 {
diff --git a/gdb/filesystem.c b/gdb/filesystem.c
index 1e42d83b71..624563aef3 100644
--- a/gdb/filesystem.c
+++ b/gdb/filesystem.c
@@ -76,9 +76,6 @@ is \"%s\".\n"),
 		      value);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_filesystem;
-
 void
 _initialize_filesystem (void)
 {
diff --git a/gdb/findcmd.c b/gdb/findcmd.c
index 9944aedaa7..e35c224ad0 100644
--- a/gdb/findcmd.c
+++ b/gdb/findcmd.c
@@ -317,9 +317,6 @@ find_command (char *args, int from_tty)
   do_cleanups (old_cleanups);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_mem_search;
-
 void
 _initialize_mem_search (void)
 {
diff --git a/gdb/fork-child.c b/gdb/fork-child.c
index 60985d852d..194aab57ca 100644
--- a/gdb/fork-child.c
+++ b/gdb/fork-child.c
@@ -159,9 +159,6 @@ show_startup_with_shell (struct ui_file *file, int from_tty,
 		    value);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_fork_child;
-
 void
 _initialize_fork_child (void)
 {
diff --git a/gdb/frame-base.c b/gdb/frame-base.c
index 4f7213daae..ba438dc08e 100644
--- a/gdb/frame-base.c
+++ b/gdb/frame-base.c
@@ -120,8 +120,6 @@ frame_base_find_by_frame (struct frame_info *this_frame)
   return table->default_base;
 }
 
-extern initialize_file_ftype _initialize_frame_base; /* -Wmissing-prototypes */
-
 void
 _initialize_frame_base (void)
 {
diff --git a/gdb/frame-unwind.c b/gdb/frame-unwind.c
index 3a75013059..096631c58b 100644
--- a/gdb/frame-unwind.c
+++ b/gdb/frame-unwind.c
@@ -288,9 +288,6 @@ frame_unwind_got_address (struct frame_info *frame, int regnum,
   return reg_val;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_frame_unwind;
-
 void
 _initialize_frame_unwind (void)
 {
diff --git a/gdb/frame.c b/gdb/frame.c
index 55d4ddb396..f100da356a 100644
--- a/gdb/frame.c
+++ b/gdb/frame.c
@@ -2927,8 +2927,6 @@ frame_prepare_for_sniffer (struct frame_info *frame,
   return make_cleanup (frame_cleanup_after_sniffer, frame);
 }
 
-extern initialize_file_ftype _initialize_frame; /* -Wmissing-prototypes */
-
 static struct cmd_list_element *set_backtrace_cmdlist;
 static struct cmd_list_element *show_backtrace_cmdlist;
 
diff --git a/gdb/frv-linux-tdep.c b/gdb/frv-linux-tdep.c
index cd02669d25..7974f751f6 100644
--- a/gdb/frv-linux-tdep.c
+++ b/gdb/frv-linux-tdep.c
@@ -480,9 +480,6 @@ frv_linux_elf_osabi_sniffer (bfd *abfd)
     return GDB_OSABI_UNKNOWN;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_frv_linux_tdep (void);
-
 void
 _initialize_frv_linux_tdep (void)
 {
diff --git a/gdb/frv-tdep.c b/gdb/frv-tdep.c
index c0257bdb4c..8a3a893282 100644
--- a/gdb/frv-tdep.c
+++ b/gdb/frv-tdep.c
@@ -39,8 +39,6 @@
 #include "frv-tdep.h"
 #include "objfiles.h"
 
-extern void _initialize_frv_tdep (void);
-
 struct frv_unwind_cache		/* was struct frame_extra_info */
   {
     /* The previous frame's inner-most stack address.  Used as this
diff --git a/gdb/ft32-tdep.c b/gdb/ft32-tdep.c
index 5a7aea1bd2..a988421ec3 100644
--- a/gdb/ft32-tdep.c
+++ b/gdb/ft32-tdep.c
@@ -45,10 +45,6 @@
 
 #define RAM_BIAS  0x800000  /* Bias added to RAM addresses.  */
 
-/* Local functions.  */
-
-extern void _initialize_ft32_tdep (void);
-
 /* Use an invalid address -1 as 'not available' marker.  */
 enum { REG_UNAVAIL = (CORE_ADDR) (-1) };
 
diff --git a/gdb/gcore.c b/gdb/gcore.c
index 07c1997bfd..69e5eb9575 100644
--- a/gdb/gcore.c
+++ b/gdb/gcore.c
@@ -609,9 +609,6 @@ gcore_memory_sections (bfd *obfd)
   return 1;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_gcore;
-
 void
 _initialize_gcore (void)
 {
diff --git a/gdb/gdb_bfd.c b/gdb/gdb_bfd.c
index c0dc191635..d80b3fb7bc 100644
--- a/gdb/gdb_bfd.c
+++ b/gdb/gdb_bfd.c
@@ -987,9 +987,6 @@ maintenance_info_bfds (char *arg, int from_tty)
   htab_traverse (all_bfds, print_one_bfd, uiout);
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_gdb_bfd;
-
 void
 _initialize_gdb_bfd (void)
 {
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index 24521b5e23..5a84879ae1 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -5479,8 +5479,6 @@ target_gdbarch (void)
   return current_inferior ()->gdbarch;
 }
 
-extern void _initialize_gdbarch (void);
-
 void
 _initialize_gdbarch (void)
 {
diff --git a/gdb/gdbarch.sh b/gdb/gdbarch.sh
index 36451b1a2f..026065e52a 100755
--- a/gdb/gdbarch.sh
+++ b/gdb/gdbarch.sh
@@ -2525,8 +2525,6 @@ target_gdbarch (void)
   return current_inferior ()->gdbarch;
 }
 
-extern void _initialize_gdbarch (void);
-
 void
 _initialize_gdbarch (void)
 {
diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
index fc86225bf6..37162d050d 100644
--- a/gdb/gdbtypes.c
+++ b/gdb/gdbtypes.c
@@ -5368,8 +5368,6 @@ objfile_type (struct objfile *objfile)
   return objfile_type;
 }
 
-extern initialize_file_ftype _initialize_gdbtypes;
-
 void
 _initialize_gdbtypes (void)
 {
diff --git a/gdb/gnu-nat.c b/gdb/gnu-nat.c
index d5e3841e68..d3726e7842 100644
--- a/gdb/gnu-nat.c
+++ b/gdb/gnu-nat.c
@@ -3480,11 +3480,6 @@ to the thread's initial suspend-count when gdb notices the threads."),
 	   &thread_cmd_list);
 }
 
-
-
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_gnu_nat;
-
 void
 _initialize_gnu_nat (void)
 {
diff --git a/gdb/gnu-v2-abi.c b/gdb/gnu-v2-abi.c
index 91c42015aa..c25b23089c 100644
--- a/gdb/gnu-v2-abi.c
+++ b/gdb/gnu-v2-abi.c
@@ -413,8 +413,6 @@ init_gnuv2_ops (void)
   gnu_v2_abi_ops.baseclass_offset = gnuv2_baseclass_offset;
 }
 
-extern initialize_file_ftype _initialize_gnu_v2_abi; /* -Wmissing-prototypes */
-
 void
 _initialize_gnu_v2_abi (void)
 {
diff --git a/gdb/gnu-v3-abi.c b/gdb/gnu-v3-abi.c
index f5d3d13a53..aad812b47a 100644
--- a/gdb/gnu-v3-abi.c
+++ b/gdb/gnu-v3-abi.c
@@ -1358,8 +1358,6 @@ init_gnuv3_ops (void)
   gnu_v3_abi_ops.pass_by_reference = gnuv3_pass_by_reference;
 }
 
-extern initialize_file_ftype _initialize_gnu_v3_abi; /* -Wmissing-prototypes */
-
 void
 _initialize_gnu_v3_abi (void)
 {
diff --git a/gdb/go-lang.c b/gdb/go-lang.c
index 60bb3c5547..7441bb30f6 100644
--- a/gdb/go-lang.c
+++ b/gdb/go-lang.c
@@ -670,8 +670,6 @@ builtin_go_type (struct gdbarch *gdbarch)
   return (const struct builtin_go_type *) gdbarch_data (gdbarch, go_type_data);
 }
 
-extern initialize_file_ftype _initialize_go_language;
-
 void
 _initialize_go_language (void)
 {
diff --git a/gdb/go32-nat.c b/gdb/go32-nat.c
index 4e609a87e7..92f7381ef6 100644
--- a/gdb/go32-nat.c
+++ b/gdb/go32-nat.c
@@ -2058,9 +2058,6 @@ go32_info_dos_command (char *args, int from_tty)
   help_list (info_dos_cmdlist, "info dos ", class_info, gdb_stdout);
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_go32_nat;
-
 void
 _initialize_go32_nat (void)
 {
diff --git a/gdb/guile/guile.c b/gdb/guile/guile.c
index 0dadc3ccc8..d6252d6855 100644
--- a/gdb/guile/guile.c
+++ b/gdb/guile/guile.c
@@ -815,9 +815,6 @@ message == an error message without a stack will be printed."),
 			&set_guile_list, &show_guile_list);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_guile;
-
 void
 _initialize_guile (void)
 {
diff --git a/gdb/h8300-tdep.c b/gdb/h8300-tdep.c
index 1e8bde17fc..7edc3ccaed 100644
--- a/gdb/h8300-tdep.c
+++ b/gdb/h8300-tdep.c
@@ -1396,8 +1396,6 @@ h8300_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
 }
 
-extern initialize_file_ftype _initialize_h8300_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_h8300_tdep (void)
 {
diff --git a/gdb/hppa-linux-nat.c b/gdb/hppa-linux-nat.c
index c8eb93c51c..c190a4bf35 100644
--- a/gdb/hppa-linux-nat.c
+++ b/gdb/hppa-linux-nat.c
@@ -377,8 +377,6 @@ fill_fpregset (const struct regcache *regcache,
    }
 }
 
-void _initialize_hppa_linux_nat (void);
-
 void
 _initialize_hppa_linux_nat (void)
 {
diff --git a/gdb/hppa-linux-tdep.c b/gdb/hppa-linux-tdep.c
index a560bbc3b9..9fc06e8189 100644
--- a/gdb/hppa-linux-tdep.c
+++ b/gdb/hppa-linux-tdep.c
@@ -483,10 +483,6 @@ hppa_linux_iterate_over_regset_sections (struct gdbarch *gdbarch,
       NULL, cb_data);
   cb (".reg2", 64 * 4, &hppa_linux_fpregset, NULL, cb_data);
 }
-
-
-/* Forward declarations.  */
-extern initialize_file_ftype _initialize_hppa_linux_tdep;
 
 static void
 hppa_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
diff --git a/gdb/hppa-nbsd-nat.c b/gdb/hppa-nbsd-nat.c
index 54c776cf59..98ac4092a5 100644
--- a/gdb/hppa-nbsd-nat.c
+++ b/gdb/hppa-nbsd-nat.c
@@ -222,10 +222,6 @@ hppanbsd_store_registers (struct target_ops *ops,
     }
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_hppanbsd_nat (void);
-
 void
 _initialize_hppanbsd_nat (void)
 {
diff --git a/gdb/hppa-nbsd-tdep.c b/gdb/hppa-nbsd-tdep.c
index 1beea448e3..2401784dda 100644
--- a/gdb/hppa-nbsd-tdep.c
+++ b/gdb/hppa-nbsd-tdep.c
@@ -205,10 +205,6 @@ hppanbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
   tramp_frame_prepend_unwinder (gdbarch, &hppanbsd_sigtramp_si4);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_hppanbsd_tdep;
 
 void
 _initialize_hppanbsd_tdep (void)
diff --git a/gdb/hppa-obsd-nat.c b/gdb/hppa-obsd-nat.c
index 7a255c9953..bc7ef9338b 100644
--- a/gdb/hppa-obsd-nat.c
+++ b/gdb/hppa-obsd-nat.c
@@ -246,9 +246,6 @@ hppaobsd_store_registers (struct target_ops *ops,
     }
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_hppaobsd_nat (void);
-
 void
 _initialize_hppaobsd_nat (void)
 {
diff --git a/gdb/hppa-obsd-tdep.c b/gdb/hppa-obsd-tdep.c
index 91a45c09e1..3e92ff91ab 100644
--- a/gdb/hppa-obsd-tdep.c
+++ b/gdb/hppa-obsd-tdep.c
@@ -164,10 +164,6 @@ hppaobsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_gdbarch_iterate_over_regset_sections
     (gdbarch, hppaobsd_iterate_over_regset_sections);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_hppabsd_tdep (void);
 
 void
 _initialize_hppabsd_tdep (void)
diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c
index 229b061b10..1a04588411 100644
--- a/gdb/hppa-tdep.c
+++ b/gdb/hppa-tdep.c
@@ -3187,9 +3187,6 @@ hppa_dump_tdep (struct gdbarch *gdbarch, struct ui_file *file)
   fprintf_unfiltered (file, "elf = %s\n", tdep->is_elf ? "yes" : "no");
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_hppa_tdep;
-
 void
 _initialize_hppa_tdep (void)
 {
diff --git a/gdb/i386-bsd-nat.c b/gdb/i386-bsd-nat.c
index 1de6c780c0..791c29254c 100644
--- a/gdb/i386-bsd-nat.c
+++ b/gdb/i386-bsd-nat.c
@@ -280,10 +280,6 @@ i386bsd_target (void)
   t->to_store_registers = i386bsd_store_inferior_registers;
   return t;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_i386bsd_nat (void);
 
 void
 _initialize_i386bsd_nat (void)
diff --git a/gdb/i386-cygwin-tdep.c b/gdb/i386-cygwin-tdep.c
index c8139ff047..eb6e05346c 100644
--- a/gdb/i386-cygwin-tdep.c
+++ b/gdb/i386-cygwin-tdep.c
@@ -252,9 +252,6 @@ i386_cygwin_osabi_sniffer (bfd *abfd)
   return GDB_OSABI_UNKNOWN;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_i386_cygwin_tdep (void);
-
 void
 _initialize_i386_cygwin_tdep (void)
 {
diff --git a/gdb/i386-darwin-tdep.c b/gdb/i386-darwin-tdep.c
index 0c558ccf56..a888e10c89 100644
--- a/gdb/i386-darwin-tdep.c
+++ b/gdb/i386-darwin-tdep.c
@@ -287,9 +287,6 @@ i386_mach_o_osabi_sniffer (bfd *abfd)
   return GDB_OSABI_UNKNOWN;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_i386_darwin_tdep;
-
 void
 _initialize_i386_darwin_tdep (void)
 {
diff --git a/gdb/i386-dicos-tdep.c b/gdb/i386-dicos-tdep.c
index ff0018ed1d..fba9c607e7 100644
--- a/gdb/i386-dicos-tdep.c
+++ b/gdb/i386-dicos-tdep.c
@@ -40,9 +40,6 @@ i386_dicos_osabi_sniffer (bfd *abfd)
   return GDB_OSABI_UNKNOWN;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_i386_dicos_tdep (void);
-
 void
 _initialize_i386_dicos_tdep (void)
 {
diff --git a/gdb/i386-fbsd-nat.c b/gdb/i386-fbsd-nat.c
index 3b2ed31821..53f58a7ab6 100644
--- a/gdb/i386-fbsd-nat.c
+++ b/gdb/i386-fbsd-nat.c
@@ -147,9 +147,6 @@ i386fbsd_read_description (struct target_ops *ops)
 }
 #endif
 
-/* Prevent warning from -Wmissing-prototypes.  */
-void _initialize_i386fbsd_nat (void);
-
 void
 _initialize_i386fbsd_nat (void)
 {
diff --git a/gdb/i386-fbsd-tdep.c b/gdb/i386-fbsd-tdep.c
index baca978612..5a2c67eb20 100644
--- a/gdb/i386-fbsd-tdep.c
+++ b/gdb/i386-fbsd-tdep.c
@@ -417,10 +417,6 @@ i386fbsd4_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 				     i386fbsd_core_read_description);
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_i386fbsd_tdep (void);
-
 void
 _initialize_i386fbsd_tdep (void)
 {
diff --git a/gdb/i386-gnu-nat.c b/gdb/i386-gnu-nat.c
index 3bce88a206..07e3a8361c 100644
--- a/gdb/i386-gnu-nat.c
+++ b/gdb/i386-gnu-nat.c
@@ -409,9 +409,6 @@ i386_gnu_dr_get_control (void)
 }
 #endif /* i386_DEBUG_STATE */
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_i386gnu_nat;
-
 void
 _initialize_i386gnu_nat (void)
 {
diff --git a/gdb/i386-gnu-tdep.c b/gdb/i386-gnu-tdep.c
index a5f53bc09f..f178ae0867 100644
--- a/gdb/i386-gnu-tdep.c
+++ b/gdb/i386-gnu-tdep.c
@@ -61,9 +61,6 @@ i386gnu_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   tdep->jb_pc_offset = 20;	/* From <bits/setjmp.h>.  */
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_i386gnu_tdep (void);
-
 void
 _initialize_i386gnu_tdep (void)
 {
diff --git a/gdb/i386-linux-nat.c b/gdb/i386-linux-nat.c
index b08470f305..dd86c2f353 100644
--- a/gdb/i386-linux-nat.c
+++ b/gdb/i386-linux-nat.c
@@ -702,10 +702,6 @@ i386_linux_resume (struct target_ops *ops,
   if (ptrace (request, pid, 0, gdb_signal_to_host (signal)) == -1)
     perror_with_name (("ptrace"));
 }
-
-
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_i386_linux_nat;
 
 void
 _initialize_i386_linux_nat (void)
diff --git a/gdb/i386-linux-tdep.c b/gdb/i386-linux-tdep.c
index 3e2bee916a..87a9598f8a 100644
--- a/gdb/i386-linux-tdep.c
+++ b/gdb/i386-linux-tdep.c
@@ -1076,9 +1076,6 @@ i386_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 					 i386_linux_handle_segmentation_fault);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_i386_linux_tdep (void);
-
 void
 _initialize_i386_linux_tdep (void)
 {
diff --git a/gdb/i386-nbsd-nat.c b/gdb/i386-nbsd-nat.c
index 3d40ad27d4..f862c6870d 100644
--- a/gdb/i386-nbsd-nat.c
+++ b/gdb/i386-nbsd-nat.c
@@ -70,10 +70,6 @@ i386nbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 
   return 1;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_i386nbsd_nat (void);
 
 void
 _initialize_i386nbsd_nat (void)
diff --git a/gdb/i386-nbsd-tdep.c b/gdb/i386-nbsd-tdep.c
index 7a3b0a4eb3..263cb99cbd 100644
--- a/gdb/i386-nbsd-tdep.c
+++ b/gdb/i386-nbsd-tdep.c
@@ -316,9 +316,6 @@ i386nbsdelf_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   tdep->struct_return = pcc_struct_return;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_i386nbsd_tdep;
-
 void
 _initialize_i386nbsd_tdep (void)
 {
diff --git a/gdb/i386-nto-tdep.c b/gdb/i386-nto-tdep.c
index 3fe715f4ca..5f0b88614a 100644
--- a/gdb/i386-nto-tdep.c
+++ b/gdb/i386-nto-tdep.c
@@ -367,9 +367,6 @@ i386nto_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_gdbarch_wchar_signed (gdbarch, 0);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_i386nto_tdep;
-
 void
 _initialize_i386nto_tdep (void)
 {
diff --git a/gdb/i386-obsd-nat.c b/gdb/i386-obsd-nat.c
index ddff12235b..76079afaa6 100644
--- a/gdb/i386-obsd-nat.c
+++ b/gdb/i386-obsd-nat.c
@@ -87,10 +87,6 @@ i386obsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 
   return 1;
 }
-
-
-/* Prevent warning from -Wmissing-prototypes.  */
-void _initialize_i386obsd_nat (void);
 
 void
 _initialize_i386obsd_nat (void)
diff --git a/gdb/i386-obsd-tdep.c b/gdb/i386-obsd-tdep.c
index 22375c5b75..5dfda15360 100644
--- a/gdb/i386-obsd-tdep.c
+++ b/gdb/i386-obsd-tdep.c
@@ -442,10 +442,6 @@ i386obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_i386obsd_tdep (void);
 
 void
 _initialize_i386obsd_tdep (void)
diff --git a/gdb/i386-sol2-nat.c b/gdb/i386-sol2-nat.c
index 873050e885..0c5d03fb0d 100644
--- a/gdb/i386-sol2-nat.c
+++ b/gdb/i386-sol2-nat.c
@@ -130,9 +130,6 @@ fill_fpregset (const struct regcache *regcache,
 
 #endif
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_amd64_sol2_nat (void);
-
 void
 _initialize_amd64_sol2_nat (void)
 {
diff --git a/gdb/i386-sol2-tdep.c b/gdb/i386-sol2-tdep.c
index 356d56edbb..cfa336e0d1 100644
--- a/gdb/i386-sol2-tdep.c
+++ b/gdb/i386-sol2-tdep.c
@@ -150,9 +150,6 @@ i386_sol2_osabi_sniffer (bfd *abfd)
   return GDB_OSABI_UNKNOWN;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_i386_sol2_tdep (void);
-
 void
 _initialize_i386_sol2_tdep (void)
 {
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index 74011398ab..eefa03a3bf 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -8984,9 +8984,6 @@ show_mpx_cmd (char *args, int from_tty)
   cmd_show_list (mpx_show_cmdlist, from_tty, "");
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_i386_tdep (void);
-
 void
 _initialize_i386_tdep (void)
 {
diff --git a/gdb/i386-windows-nat.c b/gdb/i386-windows-nat.c
index 7339e4e509..2a309c3c7e 100644
--- a/gdb/i386-windows-nat.c
+++ b/gdb/i386-windows-nat.c
@@ -79,9 +79,6 @@ i386_windows_segment_register_p (int regnum)
   return regnum >= I386_CS_REGNUM && regnum <= I386_GS_REGNUM;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_i386_windows_nat;
-
 void
 _initialize_i386_windows_nat (void)
 {
diff --git a/gdb/ia64-libunwind-tdep.c b/gdb/ia64-libunwind-tdep.c
index 025c87039e..62b5bb3bee 100644
--- a/gdb/ia64-libunwind-tdep.c
+++ b/gdb/ia64-libunwind-tdep.c
@@ -592,9 +592,6 @@ libunwind_is_initialized (void)
   return libunwind_initialized;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_libunwind_frame (void);
-
 void
 _initialize_libunwind_frame (void)
 {
diff --git a/gdb/ia64-linux-nat.c b/gdb/ia64-linux-nat.c
index a532b98385..14b6843104 100644
--- a/gdb/ia64-linux-nat.c
+++ b/gdb/ia64-linux-nat.c
@@ -891,8 +891,6 @@ ia64_linux_status_is_event (int status)
 				 || WSTOPSIG (status) == SIGILL);
 }
 
-void _initialize_ia64_linux_nat (void);
-
 void
 _initialize_ia64_linux_nat (void)
 {
diff --git a/gdb/ia64-linux-tdep.c b/gdb/ia64-linux-tdep.c
index 3f914dee16..c08d494c97 100644
--- a/gdb/ia64-linux-tdep.c
+++ b/gdb/ia64-linux-tdep.c
@@ -256,9 +256,6 @@ ia64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 				      ia64_linux_stap_is_single_operand);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_ia64_linux_tdep;
-
 void
 _initialize_ia64_linux_tdep (void)
 {
diff --git a/gdb/ia64-tdep.c b/gdb/ia64-tdep.c
index 5a16db1563..5fc32a8bfc 100644
--- a/gdb/ia64-tdep.c
+++ b/gdb/ia64-tdep.c
@@ -4038,8 +4038,6 @@ ia64_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-extern initialize_file_ftype _initialize_ia64_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_ia64_tdep (void)
 {
diff --git a/gdb/ia64-vms-tdep.c b/gdb/ia64-vms-tdep.c
index fa22cf718d..f47cf0a193 100644
--- a/gdb/ia64-vms-tdep.c
+++ b/gdb/ia64-vms-tdep.c
@@ -154,9 +154,6 @@ ia64_openvms_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 #endif
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_ia64_vms_tdep;
-
 void
 _initialize_ia64_vms_tdep (void)
 {
diff --git a/gdb/infcall.c b/gdb/infcall.c
index cd3eedfeeb..5df04e3b9a 100644
--- a/gdb/infcall.c
+++ b/gdb/infcall.c
@@ -1412,10 +1412,6 @@ When the function is done executing, GDB will silently stop."),
   /* The above code errors out, so ...  */
   gdb_assert_not_reached ("... should not be here");
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_infcall (void);
 
 void
 _initialize_infcall (void)
diff --git a/gdb/infcmd.c b/gdb/infcmd.c
index 3b7178c4d8..25cf025426 100644
--- a/gdb/infcmd.c
+++ b/gdb/infcmd.c
@@ -100,8 +100,6 @@ static void step_command (char *, int);
 
 static void run_command (char *, int);
 
-void _initialize_infcmd (void);
-
 #define ERROR_NO_INFERIOR \
    if (!target_has_execution) error (_("The program is not being run."));
 
diff --git a/gdb/inferior.c b/gdb/inferior.c
index a20c6c5b9b..b916909905 100644
--- a/gdb/inferior.c
+++ b/gdb/inferior.c
@@ -37,8 +37,6 @@
 #include "readline/tilde.h"
 #include "progspace-and-thread.h"
 
-void _initialize_inferiors (void);
-
 /* Keep a registry of per-inferior data-pointers required by other GDB
    modules.  */
 
diff --git a/gdb/inflow.c b/gdb/inflow.c
index 41a2251e88..0e8c0f3c80 100644
--- a/gdb/inflow.c
+++ b/gdb/inflow.c
@@ -42,8 +42,6 @@
 #define O_NOCTTY 0
 #endif
 
-extern void _initialize_inflow (void);
-
 static void pass_signal (int);
 
 static void child_terminal_ours_1 (int);
diff --git a/gdb/infrun.c b/gdb/infrun.c
index 1e301d3a44..3f2ac85b91 100644
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -95,8 +95,6 @@ static void set_schedlock_func (char *args, int from_tty,
 
 static int currently_stepping (struct thread_info *tp);
 
-void _initialize_infrun (void);
-
 void nullify_last_target_wait_ptid (void);
 
 static void insert_hp_step_resume_breakpoint_at_frame (struct frame_info *);
diff --git a/gdb/interps.c b/gdb/interps.c
index 1e59034a5e..19694ff828 100644
--- a/gdb/interps.c
+++ b/gdb/interps.c
@@ -74,8 +74,6 @@ get_current_interp_info (void)
 
 /* The magic initialization routine for this module.  */
 
-void _initialize_interpreter (void);
-
 static struct interp *interp_lookup_existing (struct ui *ui,
 					      const char *name);
 
diff --git a/gdb/iq2000-tdep.c b/gdb/iq2000-tdep.c
index 99824b7f8a..deafaaa38d 100644
--- a/gdb/iq2000-tdep.c
+++ b/gdb/iq2000-tdep.c
@@ -858,9 +858,6 @@ iq2000_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
    Initializer function for the iq2000 module.
    Called by gdb at start-up.  */
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_iq2000_tdep;
-
 void
 _initialize_iq2000_tdep (void)
 {
diff --git a/gdb/jit.c b/gdb/jit.c
index 725d41ef0a..72eed50bef 100644
--- a/gdb/jit.c
+++ b/gdb/jit.c
@@ -1501,10 +1501,6 @@ jit_gdbarch_data_init (struct obstack *obstack)
   return data;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-
-extern void _initialize_jit (void);
-
 void
 _initialize_jit (void)
 {
diff --git a/gdb/language.c b/gdb/language.c
index 073039e326..7f870d8352 100644
--- a/gdb/language.c
+++ b/gdb/language.c
@@ -46,8 +46,6 @@
 #include "c-lang.h"
 #include <algorithm>
 
-extern void _initialize_language (void);
-
 static void unk_lang_error (const char *);
 
 static int unk_lang_parser (struct parser_state *);
diff --git a/gdb/linux-fork.c b/gdb/linux-fork.c
index 16403c9601..22a11c6529 100644
--- a/gdb/linux-fork.c
+++ b/gdb/linux-fork.c
@@ -38,9 +38,6 @@
 struct fork_info *fork_list;
 static int highest_fork_num;
 
-/* Prevent warning from -Wmissing-prototypes.  */
-extern void _initialize_linux_fork (void);
-
 /* Fork list data structure:  */
 struct fork_info
 {
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c
index 41243185d7..89e0c62fb1 100644
--- a/gdb/linux-nat.c
+++ b/gdb/linux-nat.c
@@ -4952,9 +4952,6 @@ current_lwp_ptid (void)
   return inferior_ptid;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_linux_nat;
-
 void
 _initialize_linux_nat (void)
 {
diff --git a/gdb/linux-tdep.c b/gdb/linux-tdep.c
index eb44659952..61ea13c6a8 100644
--- a/gdb/linux-tdep.c
+++ b/gdb/linux-tdep.c
@@ -2552,9 +2552,6 @@ linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_gdbarch_get_siginfo_type (gdbarch, linux_get_siginfo_type);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_linux_tdep;
-
 void
 _initialize_linux_tdep (void)
 {
diff --git a/gdb/linux-thread-db.c b/gdb/linux-thread-db.c
index 6d981357cf..6567e93b06 100644
--- a/gdb/linux-thread-db.c
+++ b/gdb/linux-thread-db.c
@@ -1696,9 +1696,6 @@ init_thread_db_ops (void)
   complete_target_initialization (&thread_db_ops);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_thread_db;
-
 void
 _initialize_thread_db (void)
 {
diff --git a/gdb/lm32-tdep.c b/gdb/lm32-tdep.c
index 1ca6c08bf2..24bc5c2cbe 100644
--- a/gdb/lm32-tdep.c
+++ b/gdb/lm32-tdep.c
@@ -571,9 +571,6 @@ lm32_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_lm32_tdep;
-
 void
 _initialize_lm32_tdep (void)
 {
diff --git a/gdb/m2-lang.c b/gdb/m2-lang.c
index b9ab2b3c72..ddd50af54c 100644
--- a/gdb/m2-lang.c
+++ b/gdb/m2-lang.c
@@ -28,7 +28,6 @@
 #include "c-lang.h"
 #include "valprint.h"
 
-extern void _initialize_m2_language (void);
 static void m2_printchar (int, struct type *, struct ui_file *);
 static void m2_emit_char (int, struct type *, struct ui_file *, int);
 
diff --git a/gdb/m32c-tdep.c b/gdb/m32c-tdep.c
index 1bc5950c6e..73591413c8 100644
--- a/gdb/m32c-tdep.c
+++ b/gdb/m32c-tdep.c
@@ -2681,9 +2681,6 @@ m32c_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_m32c_tdep;
-
 void
 _initialize_m32c_tdep (void)
 {
diff --git a/gdb/m32r-linux-nat.c b/gdb/m32r-linux-nat.c
index a33de23dc3..65d85e16b9 100644
--- a/gdb/m32r-linux-nat.c
+++ b/gdb/m32r-linux-nat.c
@@ -231,8 +231,6 @@ m32r_linux_store_inferior_registers (struct target_ops *ops,
 		  _("Got request to store bad register number %d."), regno);
 }
 
-void _initialize_m32r_linux_nat (void);
-
 void
 _initialize_m32r_linux_nat (void)
 {
diff --git a/gdb/m32r-linux-tdep.c b/gdb/m32r-linux-tdep.c
index f72dccd464..c61f2e3a6a 100644
--- a/gdb/m32r-linux-tdep.c
+++ b/gdb/m32r-linux-tdep.c
@@ -470,9 +470,6 @@ m32r_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
                                              svr4_fetch_objfile_link_map);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_m32r_linux_tdep (void);
-
 void
 _initialize_m32r_linux_tdep (void)
 {
diff --git a/gdb/m32r-tdep.c b/gdb/m32r-tdep.c
index 28017b67ca..d40c39069e 100644
--- a/gdb/m32r-tdep.c
+++ b/gdb/m32r-tdep.c
@@ -44,8 +44,6 @@
 
 /* Local functions */
 
-extern void _initialize_m32r_tdep (void);
-
 static CORE_ADDR
 m32r_frame_align (struct gdbarch *gdbarch, CORE_ADDR sp)
 {
diff --git a/gdb/m68hc11-tdep.c b/gdb/m68hc11-tdep.c
index b0b97b2de4..b144d8b354 100644
--- a/gdb/m68hc11-tdep.c
+++ b/gdb/m68hc11-tdep.c
@@ -1543,9 +1543,6 @@ m68hc11_gdbarch_init (struct gdbarch_info info,
   return gdbarch;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_m68hc11_tdep;
-
 void
 _initialize_m68hc11_tdep (void)
 {
diff --git a/gdb/m68k-bsd-nat.c b/gdb/m68k-bsd-nat.c
index e0aee05ce5..bdd00b9223 100644
--- a/gdb/m68k-bsd-nat.c
+++ b/gdb/m68k-bsd-nat.c
@@ -215,10 +215,6 @@ m68kbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 
   return 1;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_m68kbsd_nat (void);
 
 void
 _initialize_m68kbsd_nat (void)
diff --git a/gdb/m68k-bsd-tdep.c b/gdb/m68k-bsd-tdep.c
index 45f4396978..6b7cb3cfd6 100644
--- a/gdb/m68k-bsd-tdep.c
+++ b/gdb/m68k-bsd-tdep.c
@@ -150,10 +150,6 @@ m68kbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_m68kbsd_tdep (void);
 
 void
 _initialize_m68kbsd_tdep (void)
diff --git a/gdb/m68k-linux-nat.c b/gdb/m68k-linux-nat.c
index eb14375322..0915cbec8b 100644
--- a/gdb/m68k-linux-nat.c
+++ b/gdb/m68k-linux-nat.c
@@ -505,9 +505,6 @@ ps_get_thread_area (struct ps_prochandle *ph,
 
   return PS_OK;
 }
-
-
-void _initialize_m68k_linux_nat (void);
 
 void
 _initialize_m68k_linux_nat (void)
diff --git a/gdb/m68k-linux-tdep.c b/gdb/m68k-linux-tdep.c
index 4e6221ebdf..fa0848f453 100644
--- a/gdb/m68k-linux-tdep.c
+++ b/gdb/m68k-linux-tdep.c
@@ -423,9 +423,6 @@ m68k_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
                                              svr4_fetch_objfile_link_map);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_m68k_linux_tdep;
-
 void
 _initialize_m68k_linux_tdep (void)
 {
diff --git a/gdb/m68k-tdep.c b/gdb/m68k-tdep.c
index 619a40b9a9..afd8678219 100644
--- a/gdb/m68k-tdep.c
+++ b/gdb/m68k-tdep.c
@@ -1279,8 +1279,6 @@ m68k_dump_tdep (struct gdbarch *gdbarch, struct ui_file *file)
     return;
 }
 
-extern initialize_file_ftype _initialize_m68k_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_m68k_tdep (void)
 {
diff --git a/gdb/m88k-bsd-nat.c b/gdb/m88k-bsd-nat.c
index 9549b8d3a2..4a3e32eba2 100644
--- a/gdb/m88k-bsd-nat.c
+++ b/gdb/m88k-bsd-nat.c
@@ -94,10 +94,6 @@ m88kbsd_store_inferior_registers (struct target_ops *ops,
 	      (PTRACE_TYPE_ARG3) &regs, 0) == -1)
     perror_with_name (_("Couldn't write registers"));
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_m88kbsd_nat (void);
 
 void
 _initialize_m88kbsd_nat (void)
diff --git a/gdb/m88k-tdep.c b/gdb/m88k-tdep.c
index d08a9130c7..9f1688abf0 100644
--- a/gdb/m88k-tdep.c
+++ b/gdb/m88k-tdep.c
@@ -861,10 +861,6 @@ m88k_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
 
   return gdbarch;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_m88k_tdep (void);
 
 void
 _initialize_m88k_tdep (void)
diff --git a/gdb/machoread.c b/gdb/machoread.c
index 1c317ed822..e1833e293b 100644
--- a/gdb/machoread.c
+++ b/gdb/machoread.c
@@ -994,9 +994,6 @@ static const struct sym_fns macho_sym_fns = {
   &psym_functions
 };
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_machoread;
-
 void
 _initialize_machoread (void)
 {
diff --git a/gdb/macrocmd.c b/gdb/macrocmd.c
index cb6c38c91b..957c47997c 100644
--- a/gdb/macrocmd.c
+++ b/gdb/macrocmd.c
@@ -481,11 +481,8 @@ macro_list_command (char *exp, int from_tty)
   macro_for_each (macro_user_macros, print_one_macro);
 }
 
-
 /* Initializing the `macrocmd' module.  */
 
-extern initialize_file_ftype _initialize_macrocmd; /* -Wmissing-prototypes */
-
 void
 _initialize_macrocmd (void)
 {
diff --git a/gdb/macroscope.c b/gdb/macroscope.c
index a3a9c9ccb9..481775f80a 100644
--- a/gdb/macroscope.c
+++ b/gdb/macroscope.c
@@ -156,9 +156,6 @@ standard_macro_lookup (const char *name, void *baton)
   return result;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_macroscope;
-
 void
 _initialize_macroscope (void)
 {
diff --git a/gdb/maint.c b/gdb/maint.c
index 28f7287b31..6dd6e8b695 100644
--- a/gdb/maint.c
+++ b/gdb/maint.c
@@ -44,8 +44,6 @@
 #include "cli/cli-utils.h"
 #include "cli/cli-setshow.h"
 
-extern void _initialize_maint_cmds (void);
-
 static void maintenance_command (char *, int);
 
 static void maintenance_internal_error (char *args, int from_tty);
diff --git a/gdb/mdebugread.c b/gdb/mdebugread.c
index 8e27194a64..d9942166c5 100644
--- a/gdb/mdebugread.c
+++ b/gdb/mdebugread.c
@@ -68,8 +68,6 @@
 
 #include "expression.h"
 
-extern void _initialize_mdebugread (void);
-
 /* Provide a way to test if we have both ECOFF and ELF symbol tables.
    We use this define in order to know whether we should override a 
    symbol's ECOFF section with its ELF section.  This is necessary in 
diff --git a/gdb/memattr.c b/gdb/memattr.c
index 8604e53ac2..c1ac978d9f 100644
--- a/gdb/memattr.c
+++ b/gdb/memattr.c
@@ -687,8 +687,6 @@ static void
 dummy_cmd (char *args, int from_tty)
 {
 }
-
-extern initialize_file_ftype _initialize_mem; /* -Wmissing-prototype */
 
 static struct cmd_list_element *mem_set_cmdlist;
 static struct cmd_list_element *mem_show_cmdlist;
diff --git a/gdb/mep-tdep.c b/gdb/mep-tdep.c
index 7e9b855fca..fffd40569c 100644
--- a/gdb/mep-tdep.c
+++ b/gdb/mep-tdep.c
@@ -2503,9 +2503,6 @@ mep_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_mep_tdep;
-
 void
 _initialize_mep_tdep (void)
 {
diff --git a/gdb/mi/mi-cmd-env.c b/gdb/mi/mi-cmd-env.c
index f24f387b14..977b6e274d 100644
--- a/gdb/mi/mi-cmd-env.c
+++ b/gdb/mi/mi-cmd-env.c
@@ -34,8 +34,6 @@
 
 static void env_mod_path (char *dirname, char **which_path);
 
-extern void _initialize_mi_cmd_env (void);
-
 static const char path_var_name[] = "PATH";
 static char *orig_path = NULL;
 
diff --git a/gdb/mi/mi-cmds.c b/gdb/mi/mi-cmds.c
index b7494ce838..18f6653e18 100644
--- a/gdb/mi/mi-cmds.c
+++ b/gdb/mi/mi-cmds.c
@@ -23,8 +23,6 @@
 #include "mi-cmds.h"
 #include "mi-main.h"
 
-extern void _initialize_mi_cmds (void);
-
 struct mi_cmd;
 static struct mi_cmd **lookup_table (const char *command);
 static void build_table (struct mi_cmd *commands);
diff --git a/gdb/mi/mi-interp.c b/gdb/mi/mi-interp.c
index 6b6d8f0622..ca8ff1437b 100644
--- a/gdb/mi/mi-interp.c
+++ b/gdb/mi/mi-interp.c
@@ -1411,8 +1411,6 @@ mi_interp_factory (const char *name)
   return new mi_interp (name);
 }
 
-extern initialize_file_ftype _initialize_mi_interp; /* -Wmissing-prototypes */
-
 void
 _initialize_mi_interp (void)
 {
diff --git a/gdb/mi/mi-main.c b/gdb/mi/mi-main.c
index c485544d03..8e3684abaf 100644
--- a/gdb/mi/mi-main.c
+++ b/gdb/mi/mi-main.c
@@ -87,7 +87,6 @@ int running_result_record_printed = 1;
    command was issued.  */
 int mi_proceeded;
 
-extern void _initialize_mi_main (void);
 static void mi_cmd_execute (struct mi_parse *parse);
 
 static void mi_execute_cli_command (const char *cmd, int args_p,
diff --git a/gdb/microblaze-linux-tdep.c b/gdb/microblaze-linux-tdep.c
index 54e7ad1e90..285eefe33f 100644
--- a/gdb/microblaze-linux-tdep.c
+++ b/gdb/microblaze-linux-tdep.c
@@ -135,9 +135,6 @@ microblaze_linux_init_abi (struct gdbarch_info info,
 				&microblaze_linux_sighandler_tramp_frame);
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_microblaze_linux_tdep;
-
 void
 _initialize_microblaze_linux_tdep (void)
 {
diff --git a/gdb/microblaze-tdep.c b/gdb/microblaze-tdep.c
index 55c77151f8..7547581c63 100644
--- a/gdb/microblaze-tdep.c
+++ b/gdb/microblaze-tdep.c
@@ -759,9 +759,6 @@ microblaze_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_microblaze_tdep (void);
-
 void
 _initialize_microblaze_tdep (void)
 {
diff --git a/gdb/mips-fbsd-nat.c b/gdb/mips-fbsd-nat.c
index c381186535..f86d447a44 100644
--- a/gdb/mips-fbsd-nat.c
+++ b/gdb/mips-fbsd-nat.c
@@ -119,10 +119,6 @@ mips_fbsd_store_inferior_registers (struct target_ops *ops,
 	perror_with_name (_("Couldn't write floating point status"));
     }
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_mips_fbsd_nat (void);
 
 void
 _initialize_mips_fbsd_nat (void)
diff --git a/gdb/mips-fbsd-tdep.c b/gdb/mips-fbsd-tdep.c
index feb18e1a7a..05545e37d8 100644
--- a/gdb/mips-fbsd-tdep.c
+++ b/gdb/mips-fbsd-tdep.c
@@ -534,10 +534,6 @@ mips_fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 	       mips_fbsd_ilp32_fetch_link_map_offsets :
 	       mips_fbsd_lp64_fetch_link_map_offsets));
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_mips_fbsd_tdep (void);
 
 void
 _initialize_mips_fbsd_tdep (void)
diff --git a/gdb/mips-linux-nat.c b/gdb/mips-linux-nat.c
index 1fd3365331..a86963d485 100644
--- a/gdb/mips-linux-nat.c
+++ b/gdb/mips-linux-nat.c
@@ -756,8 +756,6 @@ mips_linux_close (struct target_ops *self)
     super_close (self);
 }
 
-void _initialize_mips_linux_nat (void);
-
 void
 _initialize_mips_linux_nat (void)
 {
diff --git a/gdb/mips-linux-tdep.c b/gdb/mips-linux-tdep.c
index 001fd40027..20d9001694 100644
--- a/gdb/mips-linux-tdep.c
+++ b/gdb/mips-linux-tdep.c
@@ -1727,9 +1727,6 @@ mips_linux_init_abi (struct gdbarch_info info,
     }
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_mips_linux_tdep;
-
 void
 _initialize_mips_linux_tdep (void)
 {
diff --git a/gdb/mips-nbsd-nat.c b/gdb/mips-nbsd-nat.c
index 41e67b7ff5..c6e9828db3 100644
--- a/gdb/mips-nbsd-nat.c
+++ b/gdb/mips-nbsd-nat.c
@@ -106,10 +106,6 @@ mipsnbsd_store_inferior_registers (struct target_ops *ops,
 	perror_with_name (_("Couldn't write floating point status"));
     }
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_mipsnbsd_nat (void);
 
 void
 _initialize_mipsnbsd_nat (void)
diff --git a/gdb/mips-nbsd-tdep.c b/gdb/mips-nbsd-tdep.c
index 352346b10c..222ba54a4f 100644
--- a/gdb/mips-nbsd-tdep.c
+++ b/gdb/mips-nbsd-tdep.c
@@ -372,10 +372,6 @@ mipsnbsd_init_abi (struct gdbarch_info info,
 	       mipsnbsd_ilp32_fetch_link_map_offsets :
 	       mipsnbsd_lp64_fetch_link_map_offsets));
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_mipsnbsd_tdep;
 
 void
 _initialize_mipsnbsd_tdep (void)
diff --git a/gdb/mips-sde-tdep.c b/gdb/mips-sde-tdep.c
index 286ff1b794..e1334255c9 100644
--- a/gdb/mips-sde-tdep.c
+++ b/gdb/mips-sde-tdep.c
@@ -256,9 +256,6 @@ mips_sde_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   frame_base_append_sniffer (gdbarch, mips_sde_frame_base_sniffer);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_mips_sde_tdep;
-
 void
 _initialize_mips_sde_tdep (void)
 {
diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
index 75e45ef084..9cde2f4d63 100644
--- a/gdb/mips-tdep.c
+++ b/gdb/mips-tdep.c
@@ -8984,8 +8984,6 @@ mips_dump_tdep (struct gdbarch *gdbarch, struct ui_file *file)
 		      mips_fpu_type_str (MIPS_FPU_TYPE (gdbarch)));
 }
 
-extern initialize_file_ftype _initialize_mips_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_mips_tdep (void)
 {
diff --git a/gdb/mips64-obsd-nat.c b/gdb/mips64-obsd-nat.c
index d32af80da0..2e16cb3664 100644
--- a/gdb/mips64-obsd-nat.c
+++ b/gdb/mips64-obsd-nat.c
@@ -108,10 +108,6 @@ mips64obsd_store_inferior_registers (struct target_ops *ops,
   if (ptrace (PT_SETREGS, pid, (PTRACE_TYPE_ARG3) &regs, 0) == -1)
     perror_with_name (_("Couldn't write registers"));
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_mips64obsd_nat (void);
 
 void
 _initialize_mips64obsd_nat (void)
diff --git a/gdb/mips64-obsd-tdep.c b/gdb/mips64-obsd-tdep.c
index 487a8e50dc..2d34db88cb 100644
--- a/gdb/mips64-obsd-tdep.c
+++ b/gdb/mips64-obsd-tdep.c
@@ -158,10 +158,6 @@ mips64obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
     (gdbarch, svr4_lp64_fetch_link_map_offsets);
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_mips64obsd_tdep (void);
-
 void
 _initialize_mips64obsd_tdep (void)
 {
diff --git a/gdb/mipsread.c b/gdb/mipsread.c
index f2afe99ebe..1a28a8e01b 100644
--- a/gdb/mipsread.c
+++ b/gdb/mipsread.c
@@ -413,9 +413,6 @@ static const struct sym_fns ecoff_sym_fns =
   &psym_functions
 };
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_mipsread (void);
-
 void
 _initialize_mipsread (void)
 {
diff --git a/gdb/mn10300-linux-tdep.c b/gdb/mn10300-linux-tdep.c
index 44707e8e24..1ffcfca103 100644
--- a/gdb/mn10300-linux-tdep.c
+++ b/gdb/mn10300-linux-tdep.c
@@ -718,9 +718,6 @@ am33_linux_init_osabi (struct gdbarch_info info, struct gdbarch *gdbarch)
   tramp_frame_prepend_unwinder (gdbarch, &am33_linux_rt_sigframe);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_mn10300_linux_tdep;
-
 void
 _initialize_mn10300_linux_tdep (void)
 {
diff --git a/gdb/mn10300-tdep.c b/gdb/mn10300-tdep.c
index 669bfa1bce..7b21e4f6dc 100644
--- a/gdb/mn10300-tdep.c
+++ b/gdb/mn10300-tdep.c
@@ -1476,9 +1476,6 @@ mn10300_dump_tdep (struct gdbarch *gdbarch, struct ui_file *file)
 		      tdep->am33_mode);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_mn10300_tdep;
-
 void
 _initialize_mn10300_tdep (void)
 {
diff --git a/gdb/moxie-tdep.c b/gdb/moxie-tdep.c
index 4cd3bcd18f..81b1976413 100644
--- a/gdb/moxie-tdep.c
+++ b/gdb/moxie-tdep.c
@@ -41,10 +41,6 @@
 #include "moxie-tdep.h"
 #include <algorithm>
 
-/* Local functions.  */
-
-extern void _initialize_moxie_tdep (void);
-
 /* Use an invalid address value as 'not available' marker.  */
 enum { REG_UNAVAIL = (CORE_ADDR) -1 };
 
diff --git a/gdb/msp430-tdep.c b/gdb/msp430-tdep.c
index 7debe250a3..d74be1dcdf 100644
--- a/gdb/msp430-tdep.c
+++ b/gdb/msp430-tdep.c
@@ -1021,9 +1021,6 @@ msp430_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_msp430_tdep;
-
 /* Register the initialization routine.  */
 
 void
diff --git a/gdb/mt-tdep.c b/gdb/mt-tdep.c
index 2ab6c02c07..e3ea322bac 100644
--- a/gdb/mt-tdep.c
+++ b/gdb/mt-tdep.c
@@ -1214,9 +1214,6 @@ mt_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_mt_tdep;
-
 void
 _initialize_mt_tdep (void)
 {
diff --git a/gdb/nds32-tdep.c b/gdb/nds32-tdep.c
index 7725248aaa..962b2e76f0 100644
--- a/gdb/nds32-tdep.c
+++ b/gdb/nds32-tdep.c
@@ -55,8 +55,6 @@
 #define N32_FLDI_SP \
 	N32_TYPE2 (LDC, 0, REG_SP, 0)
 
-extern void _initialize_nds32_tdep (void);
-
 /* Use an invalid address value as 'not available' marker.  */
 enum { REG_UNAVAIL = (CORE_ADDR) -1 };
 
diff --git a/gdb/nios2-linux-tdep.c b/gdb/nios2-linux-tdep.c
index d3a9e2e51a..8cada5472a 100644
--- a/gdb/nios2-linux-tdep.c
+++ b/gdb/nios2-linux-tdep.c
@@ -238,10 +238,6 @@ nios2_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   tdep->jb_pc = 10;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-
-extern initialize_file_ftype _initialize_nios2_linux_tdep;
-
 void
 _initialize_nios2_linux_tdep (void)
 {
diff --git a/gdb/nios2-tdep.c b/gdb/nios2-tdep.c
index 905d8591b7..4ad49aef05 100644
--- a/gdb/nios2-tdep.c
+++ b/gdb/nios2-tdep.c
@@ -2354,8 +2354,6 @@ nios2_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-extern initialize_file_ftype _initialize_nios2_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_nios2_tdep (void)
 {
diff --git a/gdb/nto-procfs.c b/gdb/nto-procfs.c
index 7fb7095745..a6fe390b02 100644
--- a/gdb/nto-procfs.c
+++ b/gdb/nto-procfs.c
@@ -1533,8 +1533,6 @@ init_procfs_targets (void)
 
 #define OSTYPE_NTO 1
 
-extern initialize_file_ftype _initialize_procfs;
-
 void
 _initialize_procfs (void)
 {
diff --git a/gdb/nto-tdep.c b/gdb/nto-tdep.c
index 0b53c4b9fe..27bd19124a 100644
--- a/gdb/nto-tdep.c
+++ b/gdb/nto-tdep.c
@@ -533,9 +533,6 @@ nto_inferior_data (struct inferior *const inferior)
   return inf_data;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_nto_tdep;
-
 void
 _initialize_nto_tdep (void)
 {
diff --git a/gdb/objc-lang.c b/gdb/objc-lang.c
index 624310e3b0..dc9c9346f1 100644
--- a/gdb/objc-lang.c
+++ b/gdb/objc-lang.c
@@ -1373,9 +1373,6 @@ find_objc_msgcall (CORE_ADDR pc, CORE_ADDR *new_pc)
   return 0;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_objc_language;
-
 void
 _initialize_objc_language (void)
 {
@@ -1616,9 +1613,6 @@ resolve_msgsend_super_stret (CORE_ADDR pc, CORE_ADDR *new_pc)
   return 0;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_objc_lang;
-
 void
 _initialize_objc_lang (void)
 {
diff --git a/gdb/objfiles.c b/gdb/objfiles.c
index 96634b3f05..e743834df1 100644
--- a/gdb/objfiles.c
+++ b/gdb/objfiles.c
@@ -1630,9 +1630,6 @@ objfile_flavour_name (struct objfile *objfile)
   return NULL;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_objfiles;
-
 void
 _initialize_objfiles (void)
 {
diff --git a/gdb/observer.c b/gdb/observer.c
index 634c29e5fb..c461cda288 100644
--- a/gdb/observer.c
+++ b/gdb/observer.c
@@ -181,11 +181,6 @@ int observer_test_first_observer = 0;
 int observer_test_second_observer = 0;
 int observer_test_third_observer = 0;
 
-/* Provide prototypes to silence -Wmissing-prototypes.  */
-extern void observer_test_first_notification_function (int arg);
-extern void observer_test_second_notification_function (int arg);
-extern void observer_test_third_notification_function (int arg);
-
 void
 observer_test_first_notification_function (int arg)
 {
@@ -204,8 +199,6 @@ observer_test_third_notification_function (int arg)
   observer_test_third_observer++;
 }
 
-extern initialize_file_ftype _initialize_observer; /* -Wmissing-prototypes */
-
 void
 _initialize_observer (void)
 {
diff --git a/gdb/opencl-lang.c b/gdb/opencl-lang.c
index 9b0f015752..a9c9a3460e 100644
--- a/gdb/opencl-lang.c
+++ b/gdb/opencl-lang.c
@@ -27,8 +27,6 @@
 #include "varobj.h"
 #include "c-lang.h"
 
-extern void _initialize_opencl_language (void);
-
 /* This macro generates enum values from a given type.  */
 
 #define OCL_P_TYPE(TYPE)\
@@ -1178,9 +1176,6 @@ build_opencl_types (struct gdbarch *gdbarch)
   return types;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_opencl_language;
-
 void
 _initialize_opencl_language (void)
 {
diff --git a/gdb/osabi.c b/gdb/osabi.c
index 84fa9c0273..b4850bc9ad 100644
--- a/gdb/osabi.c
+++ b/gdb/osabi.c
@@ -653,8 +653,6 @@ show_osabi (struct ui_file *file, int from_tty, struct cmd_list_element *c,
     fprintf_filtered (file, _("The default OS ABI is \"%s\".\n"),
 		      gdbarch_osabi_name (GDB_OSABI_DEFAULT));
 }
-
-extern initialize_file_ftype _initialize_gdb_osabi; /* -Wmissing-prototype */
 
 void
 _initialize_gdb_osabi (void)
diff --git a/gdb/osdata.c b/gdb/osdata.c
index 5458e2fc3b..9da3d07cdb 100644
--- a/gdb/osdata.c
+++ b/gdb/osdata.c
@@ -414,8 +414,6 @@ info_osdata_command (char *arg, int from_tty)
   info_osdata (arg);
 }
 
-extern initialize_file_ftype _initialize_osdata; /* -Wmissing-prototypes */
-
 void
 _initialize_osdata (void)
 {
diff --git a/gdb/p-valprint.c b/gdb/p-valprint.c
index 2c802336e3..1cd69cc2b1 100644
--- a/gdb/p-valprint.c
+++ b/gdb/p-valprint.c
@@ -891,9 +891,6 @@ pascal_object_print_static_field (struct value *val,
   common_val_print (val, stream, recurse, &opts, current_language);
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_pascal_valprint;
-
 void
 _initialize_pascal_valprint (void)
 {
diff --git a/gdb/parse.c b/gdb/parse.c
index fb0dff2443..6bbf25f699 100644
--- a/gdb/parse.c
+++ b/gdb/parse.c
@@ -121,8 +121,6 @@ static expression_up parse_exp_in_context_1 (const char **, CORE_ADDR,
 					     const struct block *, int,
 					     int, int *);
 
-void _initialize_parse (void);
-
 /* Data structure for saving values of arglist_len for function calls whose
    arguments contain other function calls.  */
 
diff --git a/gdb/ppc-fbsd-nat.c b/gdb/ppc-fbsd-nat.c
index ae5877af9f..df8de14710 100644
--- a/gdb/ppc-fbsd-nat.c
+++ b/gdb/ppc-fbsd-nat.c
@@ -195,10 +195,6 @@ ppcfbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
   return 1;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-
-void _initialize_ppcfbsd_nat (void);
-
 void
 _initialize_ppcfbsd_nat (void)
 {
diff --git a/gdb/ppc-fbsd-tdep.c b/gdb/ppc-fbsd-tdep.c
index 18be8cd3b0..05365cb8b8 100644
--- a/gdb/ppc-fbsd-tdep.c
+++ b/gdb/ppc-fbsd-tdep.c
@@ -336,10 +336,6 @@ ppcfbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 					     svr4_fetch_objfile_link_map);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-
-void _initialize_ppcfbsd_tdep (void);
-
 void
 _initialize_ppcfbsd_tdep (void)
 {
diff --git a/gdb/ppc-linux-nat.c b/gdb/ppc-linux-nat.c
index 40ea589366..45c8903ef6 100644
--- a/gdb/ppc-linux-nat.c
+++ b/gdb/ppc-linux-nat.c
@@ -2473,8 +2473,6 @@ ppc_linux_read_description (struct target_ops *ops)
   return isa205? tdesc_powerpc_isa205_32l : tdesc_powerpc_32l;
 }
 
-void _initialize_ppc_linux_nat (void);
-
 void
 _initialize_ppc_linux_nat (void)
 {
diff --git a/gdb/ppc-linux-tdep.c b/gdb/ppc-linux-tdep.c
index 324b29d90c..b6e536273a 100644
--- a/gdb/ppc-linux-tdep.c
+++ b/gdb/ppc-linux-tdep.c
@@ -1833,9 +1833,6 @@ ppc_linux_init_abi (struct gdbarch_info info,
   ppc_init_linux_record_tdep (&ppc64_linux_record_tdep, 8);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_ppc_linux_tdep;
-
 void
 _initialize_ppc_linux_tdep (void)
 {
diff --git a/gdb/ppc-nbsd-nat.c b/gdb/ppc-nbsd-nat.c
index b170583f2a..98a8a7c488 100644
--- a/gdb/ppc-nbsd-nat.c
+++ b/gdb/ppc-nbsd-nat.c
@@ -174,9 +174,6 @@ ppcnbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
   return 1;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_ppcnbsd_nat (void);
-
 void
 _initialize_ppcnbsd_nat (void)
 {
diff --git a/gdb/ppc-nbsd-tdep.c b/gdb/ppc-nbsd-tdep.c
index 2c03f97d65..f2840da511 100644
--- a/gdb/ppc-nbsd-tdep.c
+++ b/gdb/ppc-nbsd-tdep.c
@@ -187,10 +187,6 @@ ppcnbsd_init_abi (struct gdbarch_info info,
   tramp_frame_prepend_unwinder (gdbarch, &ppcnbsd_sigtramp);
   tramp_frame_prepend_unwinder (gdbarch, &ppcnbsd2_sigtramp);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_ppcnbsd_tdep (void);
 
 void
 _initialize_ppcnbsd_tdep (void)
diff --git a/gdb/ppc-obsd-nat.c b/gdb/ppc-obsd-nat.c
index 20360f53c3..60f6a4f234 100644
--- a/gdb/ppc-obsd-nat.c
+++ b/gdb/ppc-obsd-nat.c
@@ -180,10 +180,6 @@ ppcobsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 
   return 1;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_ppcobsd_nat (void);
 
 void
 _initialize_ppcobsd_nat (void)
diff --git a/gdb/ppc-obsd-tdep.c b/gdb/ppc-obsd-tdep.c
index 7188ce1e2a..821a4baaf1 100644
--- a/gdb/ppc-obsd-tdep.c
+++ b/gdb/ppc-obsd-tdep.c
@@ -260,10 +260,6 @@ ppcobsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 
   frame_unwind_append_unwinder (gdbarch, &ppcobsd_sigtramp_frame_unwind);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_ppcobsd_tdep (void);
 
 void
 _initialize_ppcobsd_tdep (void)
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index 6206d8d18f..a7d5762bf9 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -158,10 +158,6 @@ static int display_number;
        B ? (TMP = B->next, 1): 0;		\
        B = TMP)
 
-/* Prototypes for exported functions.  */
-
-void _initialize_printcmd (void);
-
 /* Prototypes for local functions.  */
 
 static void do_one_display (struct display *);
diff --git a/gdb/probe.c b/gdb/probe.c
index ce2836193b..8a0689db2c 100644
--- a/gdb/probe.c
+++ b/gdb/probe.c
@@ -1025,8 +1025,6 @@ static const struct internalvar_funcs probe_funcs =
 
 VEC (probe_ops_cp) *all_probe_ops;
 
-void _initialize_probe (void);
-
 void
 _initialize_probe (void)
 {
diff --git a/gdb/proc-api.c b/gdb/proc-api.c
index dd9af0d723..2198b2678e 100644
--- a/gdb/proc-api.c
+++ b/gdb/proc-api.c
@@ -768,10 +768,6 @@ proc_prettyfprint_status (long flags, int why, int what, int thread)
     }
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_proc_api (void);
-
 void
 _initialize_proc_api (void)
 {
diff --git a/gdb/proc-events.c b/gdb/proc-events.c
index 961d626113..9d3233e611 100644
--- a/gdb/proc-events.c
+++ b/gdb/proc-events.c
@@ -1716,10 +1716,6 @@ void
 proc_prettyprint_actionset (struct sigaction *actions, int verbose)
 {
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_proc_events (void);
 
 void
 _initialize_proc_events (void)
diff --git a/gdb/proc-service.c b/gdb/proc-service.c
index 1e5433c6ba..4620fea21a 100644
--- a/gdb/proc-service.c
+++ b/gdb/proc-service.c
@@ -219,9 +219,6 @@ ps_getpid (gdb_ps_prochandle_t ph)
   return ptid_get_pid (ph->ptid);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_proc_service;
-
 void
 _initialize_proc_service (void)
 {
diff --git a/gdb/procfs.c b/gdb/procfs.c
index 504d74c05f..734430411e 100644
--- a/gdb/procfs.c
+++ b/gdb/procfs.c
@@ -5266,10 +5266,6 @@ proc_untrace_sysexit_cmd (char *args, int from_tty)
   proc_trace_syscalls (args, from_tty, PR_SYSEXIT, FLAG_RESET);
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_procfs (void);
-
 void
 _initialize_procfs (void)
 {
diff --git a/gdb/psymtab.c b/gdb/psymtab.c
index 4cbf91c60c..ea300fe86e 100644
--- a/gdb/psymtab.c
+++ b/gdb/psymtab.c
@@ -2245,10 +2245,6 @@ maintenance_check_psymtabs (char *ignore, int from_tty)
   }
 }
 
-
-
-extern initialize_file_ftype _initialize_psymtab;
-
 void
 _initialize_psymtab (void)
 {
diff --git a/gdb/python/python.c b/gdb/python/python.c
index f40fe89a31..b086cef251 100644
--- a/gdb/python/python.c
+++ b/gdb/python/python.c
@@ -1472,12 +1472,6 @@ finalize_python (void *ignore)
 
   restore_active_ext_lang (previous_active);
 }
-#endif
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_python;
-
-#ifdef HAVE_PYTHON
 
 static bool
 do_start_initialization ()
diff --git a/gdb/ravenscar-thread.c b/gdb/ravenscar-thread.c
index 1f89ea23a9..1f93e3df0e 100644
--- a/gdb/ravenscar-thread.c
+++ b/gdb/ravenscar-thread.c
@@ -421,9 +421,6 @@ Support for Ravenscar task/thread switching is enabled\n"));
 Support for Ravenscar task/thread switching is disabled\n"));
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_ravenscar (void);
-
 /* Module startup initialization function, automagically called by
    init.c.  */
 
diff --git a/gdb/record-btrace.c b/gdb/record-btrace.c
index 220b33ca2e..783e5a17aa 100644
--- a/gdb/record-btrace.c
+++ b/gdb/record-btrace.c
@@ -3042,8 +3042,6 @@ show_record_pt_buffer_size_value (struct ui_file *file, int from_tty,
 		    value);
 }
 
-void _initialize_record_btrace (void);
-
 /* Initialize btrace commands.  */
 
 void
diff --git a/gdb/record-full.c b/gdb/record-full.c
index 7f6ecc7153..d3cf78906a 100644
--- a/gdb/record-full.c
+++ b/gdb/record-full.c
@@ -2816,9 +2816,6 @@ show_record_full_command (char *args, int from_tty)
   cmd_show_list (show_record_full_cmdlist, from_tty, "");
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_record_full;
-
 void
 _initialize_record_full (void)
 {
diff --git a/gdb/record.c b/gdb/record.c
index 9ee3560155..7eef827640 100644
--- a/gdb/record.c
+++ b/gdb/record.c
@@ -773,9 +773,6 @@ set_record_call_history_size (char *args, int from_tty,
 			 &record_call_history_size);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_record;
-
 void
 _initialize_record (void)
 {
diff --git a/gdb/regcache.c b/gdb/regcache.c
index dcbcedd7a3..63d70d7c81 100644
--- a/gdb/regcache.c
+++ b/gdb/regcache.c
@@ -1736,8 +1736,6 @@ current_regcache_test (void)
 } // namespace selftests
 #endif /* GDB_SELF_TEST */
 
-extern initialize_file_ftype _initialize_regcache; /* -Wmissing-prototype */
-
 void
 _initialize_regcache (void)
 {
diff --git a/gdb/reggroups.c b/gdb/reggroups.c
index ae7d4ceeb7..512fe11b11 100644
--- a/gdb/reggroups.c
+++ b/gdb/reggroups.c
@@ -295,8 +295,6 @@ struct reggroup *const all_reggroup = &all_group;
 struct reggroup *const save_reggroup = &save_group;
 struct reggroup *const restore_reggroup = &restore_group;
 
-extern initialize_file_ftype _initialize_reggroup; /* -Wmissing-prototypes */
-
 void
 _initialize_reggroup (void)
 {
diff --git a/gdb/remote-notif.c b/gdb/remote-notif.c
index b5acc4676a..3952161373 100644
--- a/gdb/remote-notif.c
+++ b/gdb/remote-notif.c
@@ -270,9 +270,6 @@ remote_notif_state_xfree (struct remote_notif_state *state)
   xfree (state);
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_notif;
-
 void
 _initialize_notif (void)
 {
diff --git a/gdb/remote-sim.c b/gdb/remote-sim.c
index ca824d7985..48fa503cf4 100644
--- a/gdb/remote-sim.c
+++ b/gdb/remote-sim.c
@@ -44,8 +44,6 @@
 
 /* Prototypes */
 
-extern void _initialize_remote_sim (void);
-
 static void init_callbacks (void);
 
 static void end_callbacks (void);
diff --git a/gdb/remote.c b/gdb/remote.c
index abeef0d9fd..0963693a22 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -209,8 +209,6 @@ static void remote_query_supported (void);
 
 static void remote_check_symbols (void);
 
-void _initialize_remote (void);
-
 struct stop_reply;
 static void stop_reply_xfree (struct stop_reply *);
 static void remote_parse_stop_reply (char *, struct stop_reply *);
diff --git a/gdb/reverse.c b/gdb/reverse.c
index c3c20fb282..80e414ab76 100644
--- a/gdb/reverse.c
+++ b/gdb/reverse.c
@@ -322,10 +322,6 @@ info_bookmarks_command (char *args, int from_tty)
     }
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_reverse;
-
 void
 _initialize_reverse (void)
 {
diff --git a/gdb/rl78-tdep.c b/gdb/rl78-tdep.c
index 5775f96d31..56abe28f5e 100644
--- a/gdb/rl78-tdep.c
+++ b/gdb/rl78-tdep.c
@@ -1491,9 +1491,6 @@ rl78_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_rl78_tdep;
-
 /* Register the above initialization routine.  */
 
 void
diff --git a/gdb/rs6000-aix-tdep.c b/gdb/rs6000-aix-tdep.c
index e9b3f10686..f4f3eb7c3a 100644
--- a/gdb/rs6000-aix-tdep.c
+++ b/gdb/rs6000-aix-tdep.c
@@ -1089,9 +1089,6 @@ rs6000_aix_init_osabi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_ops (gdbarch, &solib_aix_so_ops);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_rs6000_aix_tdep;
-
 void
 _initialize_rs6000_aix_tdep (void)
 {
diff --git a/gdb/rs6000-lynx178-tdep.c b/gdb/rs6000-lynx178-tdep.c
index d72a61958e..18f1802e58 100644
--- a/gdb/rs6000-lynx178-tdep.c
+++ b/gdb/rs6000-lynx178-tdep.c
@@ -411,9 +411,6 @@ rs6000_lynx178_init_osabi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_gdbarch_long_double_bit (gdbarch, 8 * TARGET_CHAR_BIT);
 }
 
-/* -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_rs6000_lynx178_tdep;
-
 void
 _initialize_rs6000_lynx178_tdep (void)
 {
diff --git a/gdb/rs6000-nat.c b/gdb/rs6000-nat.c
index 833cf01619..af9273ae75 100644
--- a/gdb/rs6000-nat.c
+++ b/gdb/rs6000-nat.c
@@ -655,8 +655,6 @@ rs6000_xfer_shared_libraries
     }
 }
 
-void _initialize_rs6000_nat (void);
-
 void
 _initialize_rs6000_nat (void)
 {
diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c
index 59d6896351..95b2ca71c9 100644
--- a/gdb/rs6000-tdep.c
+++ b/gdb/rs6000-tdep.c
@@ -6751,9 +6751,6 @@ ppc_insn_ds_field (unsigned int insn)
 
 /* Initialization code.  */
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_rs6000_tdep;
-
 void
 _initialize_rs6000_tdep (void)
 {
diff --git a/gdb/rust-exp.y b/gdb/rust-exp.y
index 4cb3aa28a8..5d99994211 100644
--- a/gdb/rust-exp.y
+++ b/gdb/rust-exp.y
@@ -39,8 +39,6 @@
 
 #define RUSTSTYPE YYSTYPE
 
-extern initialize_file_ftype _initialize_rust_exp;
-
 struct rust_op;
 typedef std::vector<const struct rust_op *> rust_op_vector;
 
diff --git a/gdb/rx-tdep.c b/gdb/rx-tdep.c
index cfd185644a..d1bc0b2427 100644
--- a/gdb/rx-tdep.c
+++ b/gdb/rx-tdep.c
@@ -1165,9 +1165,6 @@ rx_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_rx_tdep;
-
 /* Register the above initialization routine.  */
 
 void
diff --git a/gdb/s390-linux-nat.c b/gdb/s390-linux-nat.c
index 90c73c44cd..b395529f2a 100644
--- a/gdb/s390-linux-nat.c
+++ b/gdb/s390-linux-nat.c
@@ -1002,8 +1002,6 @@ s390_read_description (struct target_ops *ops)
 	  tdesc_s390_linux32);
 }
 
-void _initialize_s390_nat (void);
-
 void
 _initialize_s390_nat (void)
 {
diff --git a/gdb/s390-linux-tdep.c b/gdb/s390-linux-tdep.c
index 5682c4a572..a6882fbbf4 100644
--- a/gdb/s390-linux-tdep.c
+++ b/gdb/s390-linux-tdep.c
@@ -8141,9 +8141,6 @@ s390_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-
-extern initialize_file_ftype _initialize_s390_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_s390_tdep (void)
 {
diff --git a/gdb/score-tdep.c b/gdb/score-tdep.c
index d231674196..5b68a2b332 100644
--- a/gdb/score-tdep.c
+++ b/gdb/score-tdep.c
@@ -1531,8 +1531,6 @@ score_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-extern initialize_file_ftype _initialize_score_tdep;
-
 void
 _initialize_score_tdep (void)
 {
diff --git a/gdb/selftest-arch.c b/gdb/selftest-arch.c
index 9a19f7688e..522b1daf4f 100644
--- a/gdb/selftest-arch.c
+++ b/gdb/selftest-arch.c
@@ -100,9 +100,6 @@ tests_with_arch ()
 } // namespace selftests
 #endif /* GDB_SELF_TEST */
 
-/* Suppress warning from -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_selftests_foreach_arch;
-
 void
 _initialize_selftests_foreach_arch ()
 {
diff --git a/gdb/ser-go32.c b/gdb/ser-go32.c
index 41503aca6f..e3528951b4 100644
--- a/gdb/ser-go32.c
+++ b/gdb/ser-go32.c
@@ -927,9 +927,6 @@ info_serial_command (char *arg, int from_tty)
 #endif
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_ser_dos;
-
 void
 _initialize_ser_dos (void)
 {
diff --git a/gdb/ser-mingw.c b/gdb/ser-mingw.c
index 0b78ba18e0..33e4df3b21 100644
--- a/gdb/ser-mingw.c
+++ b/gdb/ser-mingw.c
@@ -31,8 +31,6 @@
 
 #include "command.h"
 
-void _initialize_ser_windows (void);
-
 struct ser_windows_state
 {
   int in_progress;
diff --git a/gdb/ser-pipe.c b/gdb/ser-pipe.c
index ae989a08dd..cb94242745 100644
--- a/gdb/ser-pipe.c
+++ b/gdb/ser-pipe.c
@@ -36,8 +36,6 @@
 static int pipe_open (struct serial *scb, const char *name);
 static void pipe_close (struct serial *scb);
 
-extern void _initialize_ser_pipe (void);
-
 struct pipe_state
   {
     int pid;
diff --git a/gdb/ser-tcp.c b/gdb/ser-tcp.c
index 57a7c5507f..f35991c851 100644
--- a/gdb/ser-tcp.c
+++ b/gdb/ser-tcp.c
@@ -60,8 +60,6 @@
 typedef int socklen_t;
 #endif
 
-void _initialize_ser_tcp (void);
-
 /* For "set tcp" and "show tcp".  */
 
 static struct cmd_list_element *tcp_set_cmdlist;
diff --git a/gdb/ser-unix.c b/gdb/ser-unix.c
index 54b0b75c17..53c33e663f 100644
--- a/gdb/ser-unix.c
+++ b/gdb/ser-unix.c
@@ -99,8 +99,6 @@ static int hardwire_flush_input (struct serial *);
 static int hardwire_send_break (struct serial *);
 static int hardwire_setstopbits (struct serial *, int);
 
-void _initialize_ser_hardwire (void);
-
 /* Open up a real live device for serial I/O.  */
 
 static int
diff --git a/gdb/serial.c b/gdb/serial.c
index b48b9779ed..01294d1ebd 100644
--- a/gdb/serial.c
+++ b/gdb/serial.c
@@ -23,8 +23,6 @@
 #include "gdbcmd.h"
 #include "cli/cli-utils.h"
 
-extern void _initialize_serial (void);
-
 /* Is serial being debugged?  */
 
 static unsigned int global_serial_debug_p;
diff --git a/gdb/sh-linux-tdep.c b/gdb/sh-linux-tdep.c
index c5c745d218..b70f996c2c 100644
--- a/gdb/sh-linux-tdep.c
+++ b/gdb/sh-linux-tdep.c
@@ -212,9 +212,6 @@ sh_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
     }
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_sh_linux_tdep (void);
-
 void
 _initialize_sh_linux_tdep (void)
 {
diff --git a/gdb/sh-nbsd-nat.c b/gdb/sh-nbsd-nat.c
index ac93dcd59c..7cf7a9910e 100644
--- a/gdb/sh-nbsd-nat.c
+++ b/gdb/sh-nbsd-nat.c
@@ -91,9 +91,6 @@ shnbsd_store_inferior_registers (struct target_ops *ops,
     }
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_shnbsd_nat (void);
-
 void
 _initialize_shnbsd_nat (void)
 {
diff --git a/gdb/sh-nbsd-tdep.c b/gdb/sh-nbsd-tdep.c
index 6fe776335b..4a335de02d 100644
--- a/gdb/sh-nbsd-tdep.c
+++ b/gdb/sh-nbsd-tdep.c
@@ -69,10 +69,6 @@ shnbsd_init_abi (struct gdbarch_info info,
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_shnbsd_tdep;
 
 void
 _initialize_shnbsd_tdep (void)
diff --git a/gdb/sh-tdep.c b/gdb/sh-tdep.c
index a87547d4ce..a413daae12 100644
--- a/gdb/sh-tdep.c
+++ b/gdb/sh-tdep.c
@@ -2444,8 +2444,6 @@ set_sh_command (char *args, int from_tty)
   help_list (setshcmdlist, "set sh ", all_commands, gdb_stdout);
 }
 
-extern initialize_file_ftype _initialize_sh_tdep;  /* -Wmissing-prototypes */
-
 void
 _initialize_sh_tdep (void)
 {
diff --git a/gdb/skip.c b/gdb/skip.c
index bd9eec9d7c..8db0cd5d12 100644
--- a/gdb/skip.c
+++ b/gdb/skip.c
@@ -600,9 +600,6 @@ function_name_is_marked_for_skip (const char *function_name,
   return false;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_step_skip;
-
 void
 _initialize_step_skip (void)
 {
diff --git a/gdb/sol-thread.c b/gdb/sol-thread.c
index c4d4b02c7c..d493f7b8d5 100644
--- a/gdb/sol-thread.c
+++ b/gdb/sol-thread.c
@@ -1214,9 +1214,6 @@ init_sol_thread_ops (void)
   sol_thread_ops.to_magic = OPS_MAGIC;
 }
 
-/* Silence -Wmissing-prototypes.  */
-extern void _initialize_sol_thread (void);
-
 void
 _initialize_sol_thread (void)
 {
diff --git a/gdb/solib-aix.c b/gdb/solib-aix.c
index d0f5e96119..633c9e6aaf 100644
--- a/gdb/solib-aix.c
+++ b/gdb/solib-aix.c
@@ -775,9 +775,6 @@ show_solib_aix_debug (struct ui_file *file, int from_tty,
 /* The target_so_ops for AIX targets.  */
 struct target_so_ops solib_aix_so_ops;
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_solib_aix;
-
 void
 _initialize_solib_aix (void)
 {
diff --git a/gdb/solib-darwin.c b/gdb/solib-darwin.c
index c2b776d320..04bbf86cf1 100644
--- a/gdb/solib-darwin.c
+++ b/gdb/solib-darwin.c
@@ -648,9 +648,6 @@ darwin_bfd_open (char *pathname)
 
 struct target_so_ops darwin_so_ops;
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_darwin_solib;
-
 void
 _initialize_darwin_solib (void)
 {
diff --git a/gdb/solib-dsbt.c b/gdb/solib-dsbt.c
index facbd93361..86b9e30864 100644
--- a/gdb/solib-dsbt.c
+++ b/gdb/solib-dsbt.c
@@ -1054,9 +1054,6 @@ show_dsbt_debug (struct ui_file *file, int from_tty,
 
 struct target_so_ops dsbt_so_ops;
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_dsbt_solib;
-
 void
 _initialize_dsbt_solib (void)
 {
diff --git a/gdb/solib-frv.c b/gdb/solib-frv.c
index f0265e3f25..6d74652ea9 100644
--- a/gdb/solib-frv.c
+++ b/gdb/solib-frv.c
@@ -1153,9 +1153,6 @@ frv_fetch_objfile_link_map (struct objfile *objfile)
 
 struct target_so_ops frv_so_ops;
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_frv_solib;
-
 void
 _initialize_frv_solib (void)
 {
diff --git a/gdb/solib-spu.c b/gdb/solib-spu.c
index e6eab63854..886322d9bc 100644
--- a/gdb/solib-spu.c
+++ b/gdb/solib-spu.c
@@ -542,9 +542,6 @@ spu_solib_loaded (struct so_list *so)
     }
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_spu_solib;
-
 void
 _initialize_spu_solib (void)
 {
diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c
index f99e2e2bf6..405de37aa5 100644
--- a/gdb/solib-svr4.c
+++ b/gdb/solib-svr4.c
@@ -3293,8 +3293,6 @@ elf_lookup_lib_symbol (struct objfile *objfile,
   return lookup_global_symbol_from_objfile (objfile, name, domain);
 }
 
-extern initialize_file_ftype _initialize_svr4_solib; /* -Wmissing-prototypes */
-
 void
 _initialize_svr4_solib (void)
 {
diff --git a/gdb/solib-target.c b/gdb/solib-target.c
index 71a0da322c..dcd0f85d34 100644
--- a/gdb/solib-target.c
+++ b/gdb/solib-target.c
@@ -470,9 +470,6 @@ solib_target_in_dynsym_resolve_code (CORE_ADDR pc)
 
 struct target_so_ops solib_target_so_ops;
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_solib_target;
-
 void
 _initialize_solib_target (void)
 {
diff --git a/gdb/solib.c b/gdb/solib.c
index c8fe4d2cc7..0684297842 100644
--- a/gdb/solib.c
+++ b/gdb/solib.c
@@ -1600,8 +1600,6 @@ remove_user_added_objfile (struct objfile *objfile)
     }
 }
 
-extern initialize_file_ftype _initialize_solib; /* -Wmissing-prototypes */
-
 void
 _initialize_solib (void)
 {
diff --git a/gdb/source.c b/gdb/source.c
index bac404530c..0564c1581b 100644
--- a/gdb/source.c
+++ b/gdb/source.c
@@ -48,10 +48,6 @@
 #define OPEN_MODE (O_RDONLY | O_BINARY)
 #define FDOPEN_MODE FOPEN_RB
 
-/* Prototypes for exported functions.  */
-
-void _initialize_source (void);
-
 /* Prototypes for local functions.  */
 
 static int get_filename_and_charpos (struct symtab *, char **);
diff --git a/gdb/sparc-linux-nat.c b/gdb/sparc-linux-nat.c
index bdaf8dcc25..6fcef4811b 100644
--- a/gdb/sparc-linux-nat.c
+++ b/gdb/sparc-linux-nat.c
@@ -53,8 +53,6 @@ fill_fpregset (const struct regcache *regcache,
   sparc32_collect_fpregset (sparc_fpregmap, regcache, regnum, fpregs);
 }
 
-void _initialize_sparc_linux_nat (void);
-
 void
 _initialize_sparc_linux_nat (void)
 {
diff --git a/gdb/sparc-linux-tdep.c b/gdb/sparc-linux-tdep.c
index 52cfeda24a..6ed717aa9f 100644
--- a/gdb/sparc-linux-tdep.c
+++ b/gdb/sparc-linux-tdep.c
@@ -465,9 +465,6 @@ sparc32_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 				    sparc32_linux_gdb_signal_to_target);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_sparc_linux_tdep (void);
-
 void
 _initialize_sparc_linux_tdep (void)
 {
diff --git a/gdb/sparc-nat.c b/gdb/sparc-nat.c
index b842f2b482..fe9dca33c3 100644
--- a/gdb/sparc-nat.c
+++ b/gdb/sparc-nat.c
@@ -338,10 +338,6 @@ sparc_target (void)
   return t;
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc_nat (void);
-
 void
 _initialize_sparc_nat (void)
 {
diff --git a/gdb/sparc-nbsd-nat.c b/gdb/sparc-nbsd-nat.c
index af7f33f671..69987cffc9 100644
--- a/gdb/sparc-nbsd-nat.c
+++ b/gdb/sparc-nbsd-nat.c
@@ -54,10 +54,6 @@ sparc32nbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 
   return 1;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparcnbsd_nat (void);
 
 void
 _initialize_sparcnbsd_nat (void)
diff --git a/gdb/sparc-nbsd-tdep.c b/gdb/sparc-nbsd-tdep.c
index f9e5befcdd..d6a06b102c 100644
--- a/gdb/sparc-nbsd-tdep.c
+++ b/gdb/sparc-nbsd-tdep.c
@@ -314,10 +314,6 @@ sparc32nbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparcnbsd_tdep (void);
-
 void
 _initialize_sparcnbsd_tdep (void)
 {
diff --git a/gdb/sparc-obsd-tdep.c b/gdb/sparc-obsd-tdep.c
index b7d3d3cf47..fbe5aab795 100644
--- a/gdb/sparc-obsd-tdep.c
+++ b/gdb/sparc-obsd-tdep.c
@@ -246,10 +246,6 @@ sparc32obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   bsd_uthread_set_collect_uthread (gdbarch, sparc32obsd_collect_uthread);
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc32obsd_tdep (void);
-
 void
 _initialize_sparc32obsd_tdep (void)
 {
diff --git a/gdb/sparc-sol2-nat.c b/gdb/sparc-sol2-nat.c
index 4c79688f46..cf80dd9920 100644
--- a/gdb/sparc-sol2-nat.c
+++ b/gdb/sparc-sol2-nat.c
@@ -98,9 +98,6 @@ fill_fpregset (const struct regcache *regcache,
   sparc_collect_fpregset (&sparc_sol2_fpregmap, regcache, regnum, fpregs);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_sparc_sol2_nat;
-
 void
 _initialize_sparc_sol2_nat (void)
 {
diff --git a/gdb/sparc-sol2-tdep.c b/gdb/sparc-sol2-tdep.c
index d9f92d1d53..ed53ac33c4 100644
--- a/gdb/sparc-sol2-tdep.c
+++ b/gdb/sparc-sol2-tdep.c
@@ -292,10 +292,6 @@ sparc32_sol2_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   /* How to print LWP PTIDs from core files.  */
   set_gdbarch_core_pid_to_str (gdbarch, sol2_core_pid_to_str);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc_sol2_tdep (void);
 
 void
 _initialize_sparc_sol2_tdep (void)
diff --git a/gdb/sparc-tdep.c b/gdb/sparc-tdep.c
index 1f08865f9a..949c50104d 100644
--- a/gdb/sparc-tdep.c
+++ b/gdb/sparc-tdep.c
@@ -2253,10 +2253,6 @@ const struct sparc_fpregmap sparc32_bsd_fpregmap =
   0 * 4,			/* %f0 */
   32 * 4,			/* %fsr */
 };
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc_tdep (void);
 
 void
 _initialize_sparc_tdep (void)
diff --git a/gdb/sparc64-fbsd-nat.c b/gdb/sparc64-fbsd-nat.c
index d799a96943..8fc8b3187f 100644
--- a/gdb/sparc64-fbsd-nat.c
+++ b/gdb/sparc64-fbsd-nat.c
@@ -58,10 +58,6 @@ sparc64fbsd_kvm_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 
   return 1;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64fbsd_nat (void);
 
 void
 _initialize_sparc64fbsd_nat (void)
diff --git a/gdb/sparc64-fbsd-tdep.c b/gdb/sparc64-fbsd-tdep.c
index 29d2f95927..031da5b3b9 100644
--- a/gdb/sparc64-fbsd-tdep.c
+++ b/gdb/sparc64-fbsd-tdep.c
@@ -241,9 +241,6 @@ sparc64fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
     (gdbarch, svr4_lp64_fetch_link_map_offsets);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64fbsd_tdep (void);
-
 void
 _initialize_sparc64fbsd_tdep (void)
 {
diff --git a/gdb/sparc64-linux-nat.c b/gdb/sparc64-linux-nat.c
index 282980a812..204a9097a9 100644
--- a/gdb/sparc64-linux-nat.c
+++ b/gdb/sparc64-linux-nat.c
@@ -69,9 +69,6 @@ fill_fpregset (const struct regcache *regcache,
   sparc64_collect_fpregset (&sparc64_bsd_fpregmap, regcache, regnum, fpregs);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64_linux_nat (void);
-
 void
 _initialize_sparc64_linux_nat (void)
 {
diff --git a/gdb/sparc64-linux-tdep.c b/gdb/sparc64-linux-tdep.c
index 2da978fbf8..8c61072a3a 100644
--- a/gdb/sparc64-linux-tdep.c
+++ b/gdb/sparc64-linux-tdep.c
@@ -408,10 +408,6 @@ sparc64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_gdbarch_handle_segmentation_fault (gdbarch,
 					 sparc64_linux_handle_segmentation_fault);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern void _initialize_sparc64_linux_tdep (void);
 
 void
 _initialize_sparc64_linux_tdep (void)
diff --git a/gdb/sparc64-nat.c b/gdb/sparc64-nat.c
index 444300f823..d7d5ae1e41 100644
--- a/gdb/sparc64-nat.c
+++ b/gdb/sparc64-nat.c
@@ -68,10 +68,6 @@ sparc64_fpregset_supplies_p (struct gdbarch *gdbarch, int regnum)
 
   return 0;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64_nat (void);
 
 void
 _initialize_sparc64_nat (void)
diff --git a/gdb/sparc64-nbsd-nat.c b/gdb/sparc64-nbsd-nat.c
index 9c7e8b1b90..44e54f5444 100644
--- a/gdb/sparc64-nbsd-nat.c
+++ b/gdb/sparc64-nbsd-nat.c
@@ -167,10 +167,6 @@ sparc64nbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
   return 1;
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64nbsd_nat (void);
-
 void
 _initialize_sparc64nbsd_nat (void)
 {
diff --git a/gdb/sparc64-nbsd-tdep.c b/gdb/sparc64-nbsd-tdep.c
index 08ba64bf8f..0876539012 100644
--- a/gdb/sparc64-nbsd-tdep.c
+++ b/gdb/sparc64-nbsd-tdep.c
@@ -267,10 +267,6 @@ sparc64nbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_lp64_fetch_link_map_offsets);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64nbsd_tdep (void);
 
 void
 _initialize_sparc64nbsd_tdep (void)
diff --git a/gdb/sparc64-obsd-nat.c b/gdb/sparc64-obsd-nat.c
index a59fc69c37..9af3e5e4eb 100644
--- a/gdb/sparc64-obsd-nat.c
+++ b/gdb/sparc64-obsd-nat.c
@@ -106,10 +106,6 @@ sparc64obsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
   return 1;
 }
 
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64obsd_nat (void);
-
 void
 _initialize_sparc64obsd_nat (void)
 {
diff --git a/gdb/sparc64-obsd-tdep.c b/gdb/sparc64-obsd-tdep.c
index 0da50b1dc7..e86872ec12 100644
--- a/gdb/sparc64-obsd-tdep.c
+++ b/gdb/sparc64-obsd-tdep.c
@@ -439,10 +439,6 @@ sparc64obsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   bsd_uthread_set_supply_uthread (gdbarch, sparc64obsd_supply_uthread);
   bsd_uthread_set_collect_uthread (gdbarch, sparc64obsd_collect_uthread);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64obsd_tdep (void);
 
 void
 _initialize_sparc64obsd_tdep (void)
diff --git a/gdb/sparc64-sol2-tdep.c b/gdb/sparc64-sol2-tdep.c
index 5417df4ce1..1d768fa7d0 100644
--- a/gdb/sparc64-sol2-tdep.c
+++ b/gdb/sparc64-sol2-tdep.c
@@ -242,10 +242,6 @@ sparc64_sol2_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   /* How to print LWP PTIDs from core files.  */
   set_gdbarch_core_pid_to_str (gdbarch, sol2_core_pid_to_str);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_sparc64_sol2_tdep (void);
 
 void
 _initialize_sparc64_sol2_tdep (void)
diff --git a/gdb/spu-linux-nat.c b/gdb/spu-linux-nat.c
index 19552fc1fe..77f56208c7 100644
--- a/gdb/spu-linux-nat.c
+++ b/gdb/spu-linux-nat.c
@@ -634,9 +634,6 @@ spu_can_use_hw_breakpoint (struct target_ops *self,
   return 0;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_spu_nat;
-
 /* Initialize SPU native target.  */
 void 
 _initialize_spu_nat (void)
diff --git a/gdb/spu-multiarch.c b/gdb/spu-multiarch.c
index 7682ca2980..ebca082d2e 100644
--- a/gdb/spu-multiarch.c
+++ b/gdb/spu-multiarch.c
@@ -402,9 +402,6 @@ init_spu_ops (void)
   spu_ops.to_magic = OPS_MAGIC;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_spu_multiarch;
-
 void
 _initialize_spu_multiarch (void)
 {
diff --git a/gdb/spu-tdep.c b/gdb/spu-tdep.c
index 59c51b2b86..2de9155938 100644
--- a/gdb/spu-tdep.c
+++ b/gdb/spu-tdep.c
@@ -2780,9 +2780,6 @@ spu_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_spu_tdep;
-
 void
 _initialize_spu_tdep (void)
 {
diff --git a/gdb/stabsread.c b/gdb/stabsread.c
index 8ba6bb5563..d9a4d5e1d7 100644
--- a/gdb/stabsread.c
+++ b/gdb/stabsread.c
@@ -52,8 +52,6 @@
 #include "stabsread.h"		/* Our own declarations */
 #undef	EXTERN
 
-extern void _initialize_stabsread (void);
-
 struct nextfield
 {
   struct nextfield *next;
diff --git a/gdb/stack.c b/gdb/stack.c
index 8a066b2b69..06d891d167 100644
--- a/gdb/stack.c
+++ b/gdb/stack.c
@@ -2564,10 +2564,6 @@ func_command (char *arg, int from_tty)
   else if (frame != get_selected_frame (NULL))
     select_and_print_frame (frame);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_stack (void);
 
 void
 _initialize_stack (void)
diff --git a/gdb/stap-probe.c b/gdb/stap-probe.c
index 89c1ccc7cd..c0cc662334 100644
--- a/gdb/stap-probe.c
+++ b/gdb/stap-probe.c
@@ -1713,8 +1713,6 @@ info_probes_stap_command (char *arg, int from_tty)
   info_probes_for_ops (arg, from_tty, &stap_probe_ops);
 }
 
-void _initialize_stap_probe (void);
-
 void
 _initialize_stap_probe (void)
 {
diff --git a/gdb/std-regs.c b/gdb/std-regs.c
index 73bafceb82..ebcbb97e46 100644
--- a/gdb/std-regs.c
+++ b/gdb/std-regs.c
@@ -89,8 +89,6 @@ value_of_builtin_frame_ps_reg (struct frame_info *frame, const void *baton)
   error (_("Standard register ``$ps'' is not available for this target"));
 }
 
-extern initialize_file_ftype _initialize_frame_reg; /* -Wmissing-prototypes */
-
 void
 _initialize_frame_reg (void)
 {
diff --git a/gdb/symfile-debug.c b/gdb/symfile-debug.c
index 5ca1fa73ff..e7890c943c 100644
--- a/gdb/symfile-debug.c
+++ b/gdb/symfile-debug.c
@@ -673,8 +673,6 @@ show_debug_symfile (struct ui_file *file, int from_tty,
   fprintf_filtered (file, _("Symfile debugging is %s.\n"), value);
 }
 
-initialize_file_ftype _initialize_symfile_debug;
-
 void
 _initialize_symfile_debug (void)
 {
diff --git a/gdb/symfile-mem.c b/gdb/symfile-mem.c
index acbaaaf562..b3543d6a56 100644
--- a/gdb/symfile-mem.c
+++ b/gdb/symfile-mem.c
@@ -236,11 +236,6 @@ add_vsyscall_page (struct target_ops *target, int from_tty)
     }
 }
 
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_symfile_mem;
-
 void
 _initialize_symfile_mem (void)
 {
diff --git a/gdb/symfile.c b/gdb/symfile.c
index d600b61372..96b7d6ffb4 100644
--- a/gdb/symfile.c
+++ b/gdb/symfile.c
@@ -116,8 +116,6 @@ static void info_ext_lang_command (char *args, int from_tty);
 
 static void symfile_find_segment_sections (struct objfile *objfile);
 
-void _initialize_symfile (void);
-
 /* List of all available sym_fns.  On gdb startup, each object file reader
    calls add_symtab_fns() to register information on each format it is
    prepared to read.  */
diff --git a/gdb/symmisc.c b/gdb/symmisc.c
index c85f0b715c..6cbb2cea3f 100644
--- a/gdb/symmisc.c
+++ b/gdb/symmisc.c
@@ -54,8 +54,6 @@ FILE *std_err;
 
 static int block_depth (struct block *);
 
-void _initialize_symmisc (void);
-
 struct print_symbol_args
   {
     struct gdbarch *gdbarch;
diff --git a/gdb/symtab.c b/gdb/symtab.c
index 8492315305..b504cd6263 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -92,8 +92,6 @@ static struct block_symbol
 /* See symtab.h.  */
 const struct block_symbol null_block_symbol = { NULL, NULL };
 
-extern initialize_file_ftype _initialize_symtab;
-
 /* Program space key for finding name and language of "main".  */
 
 static const struct program_space_data *main_progspace_key;
diff --git a/gdb/target-dcache.c b/gdb/target-dcache.c
index fe5e56a1a3..76024403aa 100644
--- a/gdb/target-dcache.c
+++ b/gdb/target-dcache.c
@@ -168,9 +168,6 @@ code_cache_enabled_p (void)
   return code_cache_enabled;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_target_dcache;
-
 void
 _initialize_target_dcache (void)
 {
diff --git a/gdb/target-descriptions.c b/gdb/target-descriptions.c
index 2b3c1462f5..3735e6449b 100644
--- a/gdb/target-descriptions.c
+++ b/gdb/target-descriptions.c
@@ -2389,9 +2389,6 @@ maintenance_check_xml_descriptions (char *dir, int from_tty)
 		   (long) selftests::xml_tdesc.size (), failed);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_target_descriptions;
-
 void
 _initialize_target_descriptions (void)
 {
diff --git a/gdb/thread.c b/gdb/thread.c
index 8a0ed0c44e..2185d505a3 100644
--- a/gdb/thread.c
+++ b/gdb/thread.c
@@ -48,10 +48,6 @@
 
 /* Definition of struct thread_info exported to gdbthread.h.  */
 
-/* Prototypes for exported functions.  */
-
-void _initialize_thread (void);
-
 /* Prototypes for local functions.  */
 
 struct thread_info *thread_list = NULL;
diff --git a/gdb/tic6x-linux-tdep.c b/gdb/tic6x-linux-tdep.c
index 9bf490d89e..1a03a29b81 100644
--- a/gdb/tic6x-linux-tdep.c
+++ b/gdb/tic6x-linux-tdep.c
@@ -207,9 +207,6 @@ tic6x_uclinux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
 				&tic6x_linux_rt_sigreturn_tramp_frame);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tic6x_linux_tdep;
-
 void
 _initialize_tic6x_linux_tdep (void)
 {
diff --git a/gdb/tic6x-tdep.c b/gdb/tic6x-tdep.c
index 156a54f3af..013a084a2f 100644
--- a/gdb/tic6x-tdep.c
+++ b/gdb/tic6x-tdep.c
@@ -1336,9 +1336,6 @@ tic6x_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_tic6x_tdep;
-
 void
 _initialize_tic6x_tdep (void)
 {
diff --git a/gdb/tilegx-linux-nat.c b/gdb/tilegx-linux-nat.c
index 5cdf74daf2..c5c3a14352 100644
--- a/gdb/tilegx-linux-nat.c
+++ b/gdb/tilegx-linux-nat.c
@@ -154,9 +154,6 @@ store_inferior_registers (struct target_ops *ops,
     perror_with_name (_("Couldn't write registers"));
 }
 
-
-extern initialize_file_ftype _initialize_tile_linux_nat;
-
 void
 _initialize_tile_linux_nat (void)
 {
diff --git a/gdb/tilegx-linux-tdep.c b/gdb/tilegx-linux-tdep.c
index 5ae24c4306..f687d48ef7 100644
--- a/gdb/tilegx-linux-tdep.c
+++ b/gdb/tilegx-linux-tdep.c
@@ -134,9 +134,6 @@ tilegx_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_gdbarch_skip_solib_resolver (gdbarch, glibc_skip_solib_resolver);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tilegx_linux_tdep;
-
 void
 _initialize_tilegx_linux_tdep (void)
 {
diff --git a/gdb/tilegx-tdep.c b/gdb/tilegx-tdep.c
index 2db679066b..b26622d05d 100644
--- a/gdb/tilegx-tdep.c
+++ b/gdb/tilegx-tdep.c
@@ -1063,9 +1063,6 @@ tilegx_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tilegx_tdep;
-
 void
 _initialize_tilegx_tdep (void)
 {
diff --git a/gdb/tracefile-tfile.c b/gdb/tracefile-tfile.c
index 37bd96a33b..7288e7c261 100644
--- a/gdb/tracefile-tfile.c
+++ b/gdb/tracefile-tfile.c
@@ -1132,8 +1132,6 @@ init_tfile_ops (void)
   tfile_ops.to_traceframe_info = tfile_traceframe_info;
 }
 
-extern initialize_file_ftype _initialize_tracefile_tfile;
-
 void
 _initialize_tracefile_tfile (void)
 {
diff --git a/gdb/tracefile.c b/gdb/tracefile.c
index 8dde605b0e..b6a800cf7d 100644
--- a/gdb/tracefile.c
+++ b/gdb/tracefile.c
@@ -495,8 +495,6 @@ init_tracefile_ops (struct target_ops *ops)
   ops->to_magic = OPS_MAGIC;
 }
 
-extern initialize_file_ftype _initialize_tracefile;
-
 void
 _initialize_tracefile (void)
 {
diff --git a/gdb/tracepoint.c b/gdb/tracepoint.c
index f8aa3297b3..dbd850fa44 100644
--- a/gdb/tracepoint.c
+++ b/gdb/tracepoint.c
@@ -185,8 +185,6 @@ static char *mem2hex (gdb_byte *, char *, int);
 static struct command_line *
   all_tracepoint_actions_and_cleanup (struct breakpoint *t);
 
-extern void _initialize_tracepoint (void);
-
 static struct trace_status trace_status;
 
 const char *stop_reason_names[] = {
diff --git a/gdb/tui/tui-hooks.c b/gdb/tui/tui-hooks.c
index 315f5b27dc..acb63812a4 100644
--- a/gdb/tui/tui-hooks.c
+++ b/gdb/tui/tui-hooks.c
@@ -266,8 +266,6 @@ tui_remove_hooks (void)
   tui_register_changed_observer = NULL;
 }
 
-void _initialize_tui_hooks (void);
-
 void
 _initialize_tui_hooks (void)
 {
diff --git a/gdb/tui/tui-interp.c b/gdb/tui/tui-interp.c
index 702c34269c..e5e73210c7 100644
--- a/gdb/tui/tui-interp.c
+++ b/gdb/tui/tui-interp.c
@@ -311,9 +311,6 @@ tui_interp_factory (const char *name)
   return new tui_interp (name);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tui_interp;
-
 void
 _initialize_tui_interp (void)
 {
diff --git a/gdb/tui/tui-layout.c b/gdb/tui/tui-layout.c
index 7ecfaec5ef..eab1ab6336 100644
--- a/gdb/tui/tui-layout.c
+++ b/gdb/tui/tui-layout.c
@@ -367,9 +367,6 @@ layout_completer (struct cmd_list_element *ignore,
 /* Function to initialize gdb commands, for tui window layout
    manipulation.  */
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tui_layout;
-
 void
 _initialize_tui_layout (void)
 {
diff --git a/gdb/tui/tui-regs.c b/gdb/tui/tui-regs.c
index 217fff2950..838172e823 100644
--- a/gdb/tui/tui-regs.c
+++ b/gdb/tui/tui-regs.c
@@ -687,9 +687,6 @@ tui_reggroup_completer (struct cmd_list_element *ignore,
     }
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tui_regs;
-
 void
 _initialize_tui_regs (void)
 {
diff --git a/gdb/tui/tui-stack.c b/gdb/tui/tui-stack.c
index c075bef4e4..ce7c5ee732 100644
--- a/gdb/tui/tui-stack.c
+++ b/gdb/tui/tui-stack.c
@@ -487,9 +487,6 @@ tui_show_frame_info (struct frame_info *fi)
 /* Function to initialize gdb commands, for tui window stack
    manipulation.  */
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tui_stack;
-
 void
 _initialize_tui_stack (void)
 {
diff --git a/gdb/tui/tui-win.c b/gdb/tui/tui-win.c
index e0df667b29..cb8e475b72 100644
--- a/gdb/tui/tui-win.c
+++ b/gdb/tui/tui-win.c
@@ -436,9 +436,6 @@ winheight_completer (struct cmd_list_element *ignore,
 /* Function to initialize gdb commands, for tui window
    manipulation.  */
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tui_win;
-
 void
 _initialize_tui_win (void)
 {
diff --git a/gdb/tui/tui.c b/gdb/tui/tui.c
index b77a885adb..77dc86642f 100644
--- a/gdb/tui/tui.c
+++ b/gdb/tui/tui.c
@@ -671,9 +671,6 @@ tui_get_command_dimension (unsigned int *width,
   return 1;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_tui;
-
 void
 _initialize_tui (void)
 {
diff --git a/gdb/typeprint.c b/gdb/typeprint.c
index 0cc6821cf5..c82e623cfa 100644
--- a/gdb/typeprint.c
+++ b/gdb/typeprint.c
@@ -37,8 +37,6 @@
 #include "extension.h"
 #include "completer.h"
 
-extern void _initialize_typeprint (void);
-
 static void ptype_command (char *, int);
 
 static void whatis_command (char *, int);
diff --git a/gdb/user-regs.c b/gdb/user-regs.c
index a19a12aab6..121c69ffd7 100644
--- a/gdb/user-regs.c
+++ b/gdb/user-regs.c
@@ -237,8 +237,6 @@ maintenance_print_user_registers (char *args, int from_tty)
     fprintf_unfiltered (gdb_stdout, " %-11s %3d\n", reg->name, regnum);
 }
 
-extern initialize_file_ftype _initialize_user_regs; /* -Wmissing-prototypes */
-
 void
 _initialize_user_regs (void)
 {
diff --git a/gdb/utils.c b/gdb/utils.c
index f2da2df60f..583c1552c8 100644
--- a/gdb/utils.c
+++ b/gdb/utils.c
@@ -3278,9 +3278,6 @@ strip_leading_path_elements (const char *path, int n)
   return p;
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_utils;
-
 void
 _initialize_utils (void)
 {
diff --git a/gdb/v850-tdep.c b/gdb/v850-tdep.c
index 30cd35be8a..46a74aadcb 100644
--- a/gdb/v850-tdep.c
+++ b/gdb/v850-tdep.c
@@ -1478,8 +1478,6 @@ v850_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return gdbarch;
 }
 
-extern initialize_file_ftype _initialize_v850_tdep; /* -Wmissing-prototypes */
-
 void
 _initialize_v850_tdep (void)
 {
diff --git a/gdb/valarith.c b/gdb/valarith.c
index bcc5ff6c0a..a277be42bc 100644
--- a/gdb/valarith.c
+++ b/gdb/valarith.c
@@ -36,9 +36,6 @@
 #define TRUNCATION_TOWARDS_ZERO ((-5 / 2) == -2)
 #endif
 
-void _initialize_valarith (void);
-
-
 /* Given a pointer, return the size of its target.
    If the pointer type is void *, then return 1.
    If the target type is incomplete, then error out.
diff --git a/gdb/valops.c b/gdb/valops.c
index 19f96c8ddc..defc7d525a 100644
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -101,8 +101,6 @@ static void find_method_list (struct value **, const char *,
 			      VEC (xmethod_worker_ptr) **,
 			      struct type **, LONGEST *);
 
-void _initialize_valops (void);
-
 #if 0
 /* Flag for whether we want to abandon failed expression evals by
    default.  */
diff --git a/gdb/valprint.c b/gdb/valprint.c
index 5b02e2face..d3094ca6f1 100644
--- a/gdb/valprint.c
+++ b/gdb/valprint.c
@@ -104,8 +104,6 @@ static void val_print_type_code_flags (struct type *type,
 				       const gdb_byte *valaddr,
 				       struct ui_file *stream);
 
-void _initialize_valprint (void);
-
 #define PRINT_MAX_DEFAULT 200	/* Start print_max off at this value.  */
 
 struct value_print_options user_print_options =
diff --git a/gdb/value.c b/gdb/value.c
index ec615b3663..1fd9cc9a7d 100644
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -43,10 +43,6 @@
 #include <algorithm>
 #include "completer.h"
 
-/* Prototypes for exported functions.  */
-
-void _initialize_values (void);
-
 /* Definition of a user function.  */
 struct internal_function
 {
diff --git a/gdb/varobj.c b/gdb/varobj.c
index 7bd549d45c..f6691809f2 100644
--- a/gdb/varobj.c
+++ b/gdb/varobj.c
@@ -2638,8 +2638,7 @@ varobj_invalidate (void)
 {
   all_root_varobjs (varobj_invalidate_iter, NULL);
 }
-
-extern void _initialize_varobj (void);
+
 void
 _initialize_varobj (void)
 {
diff --git a/gdb/vax-bsd-nat.c b/gdb/vax-bsd-nat.c
index 62953682d3..4ed9a80482 100644
--- a/gdb/vax-bsd-nat.c
+++ b/gdb/vax-bsd-nat.c
@@ -125,10 +125,6 @@ vaxbsd_supply_pcb (struct regcache *regcache, struct pcb *pcb)
 
   return 1;
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_vaxbsd_nat (void);
 
 void
 _initialize_vaxbsd_nat (void)
diff --git a/gdb/vax-nbsd-tdep.c b/gdb/vax-nbsd-tdep.c
index cbd50f115d..1f6cc1ac7f 100644
--- a/gdb/vax-nbsd-tdep.c
+++ b/gdb/vax-nbsd-tdep.c
@@ -33,10 +33,6 @@ vaxnbsd_elf_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_svr4_fetch_link_map_offsets
     (gdbarch, svr4_ilp32_fetch_link_map_offsets);
 }
-
-
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_vaxnbsd_tdep (void);
 
 void
 _initialize_vaxnbsd_tdep (void)
diff --git a/gdb/vax-tdep.c b/gdb/vax-tdep.c
index a92a35aaa3..4ff12fde3f 100644
--- a/gdb/vax-tdep.c
+++ b/gdb/vax-tdep.c
@@ -514,9 +514,6 @@ vax_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
   return (gdbarch);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-void _initialize_vax_tdep (void);
-
 void
 _initialize_vax_tdep (void)
 {
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c
index 6a5a295ad1..ab5582d46c 100644
--- a/gdb/windows-nat.c
+++ b/gdb/windows-nat.c
@@ -2959,9 +2959,6 @@ windows_target (void)
   return t;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_windows_nat;
-
 void
 _initialize_windows_nat (void)
 {
@@ -3130,9 +3127,6 @@ windows_thread_alive (struct target_ops *ops, ptid_t ptid)
     ? FALSE : TRUE;
 }
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_check_for_gdb_ini;
-
 void
 _initialize_check_for_gdb_ini (void)
 {
@@ -3227,9 +3221,6 @@ bad_GetConsoleFontSize (HANDLE w, DWORD nFont)
   return size;
 }
  
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_loadable;
-
 /* Load any functions which may not be available in ancient versions
    of Windows.  */
 
diff --git a/gdb/windows-tdep.c b/gdb/windows-tdep.c
index 3e7e8f8b27..886c4ece67 100644
--- a/gdb/windows-tdep.c
+++ b/gdb/windows-tdep.c
@@ -479,9 +479,6 @@ windows_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
   set_solib_ops (gdbarch, &solib_target_so_ops);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_windows_tdep;
-
 /* Implementation of `tlb' variable.  */
 
 static const struct internalvar_funcs tlb_funcs =
diff --git a/gdb/xcoffread.c b/gdb/xcoffread.c
index 138f941cab..0707cd78ff 100644
--- a/gdb/xcoffread.c
+++ b/gdb/xcoffread.c
@@ -3184,9 +3184,6 @@ xcoff_free_info (struct objfile *objfile, void *arg)
   xfree (arg);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_xcoffread;
-
 void
 _initialize_xcoffread (void)
 {
diff --git a/gdb/xml-support.c b/gdb/xml-support.c
index 65638b963b..50a062a3a4 100644
--- a/gdb/xml-support.c
+++ b/gdb/xml-support.c
@@ -1055,8 +1055,6 @@ xml_fetch_content_from_file (const char *filename, void *baton)
   return text;
 }
 
-void _initialize_xml_support (void);
-
 void
 _initialize_xml_support (void)
 {
diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c
index 9d91fd540f..40a6d9818f 100644
--- a/gdb/xstormy16-tdep.c
+++ b/gdb/xstormy16-tdep.c
@@ -861,9 +861,6 @@ xstormy16_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
    Initializer function for the Sanyo Xstormy16a module.
    Called by gdb at start-up.  */
 
-/* -Wmissing-prototypes */
-extern initialize_file_ftype _initialize_xstormy16_tdep;
-
 void
 _initialize_xstormy16_tdep (void)
 {
diff --git a/gdb/xtensa-linux-nat.c b/gdb/xtensa-linux-nat.c
index 278168620c..b8366c55a4 100644
--- a/gdb/xtensa-linux-nat.c
+++ b/gdb/xtensa-linux-nat.c
@@ -338,8 +338,6 @@ ps_get_thread_area (struct ps_prochandle *ph,
   return PS_OK;
 }
 
-void _initialize_xtensa_linux_nat (void);
-
 void
 _initialize_xtensa_linux_nat (void)
 {
diff --git a/gdb/xtensa-linux-tdep.c b/gdb/xtensa-linux-tdep.c
index d27cc42e0e..e912c01940 100644
--- a/gdb/xtensa-linux-tdep.c
+++ b/gdb/xtensa-linux-tdep.c
@@ -112,9 +112,6 @@ xtensa_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
                                              svr4_fetch_objfile_link_map);
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_xtensa_linux_tdep;
-
 void
 _initialize_xtensa_linux_tdep (void)
 {
diff --git a/gdb/xtensa-tdep.c b/gdb/xtensa-tdep.c
index bfb9ac6fa4..51fa520702 100644
--- a/gdb/xtensa-tdep.c
+++ b/gdb/xtensa-tdep.c
@@ -3278,9 +3278,6 @@ xtensa_dump_tdep (struct gdbarch *gdbarch, struct ui_file *file)
   error (_("xtensa_dump_tdep(): not implemented"));
 }
 
-/* Provide a prototype to silence -Wmissing-prototypes.  */
-extern initialize_file_ftype _initialize_xtensa_tdep;
-
 void
 _initialize_xtensa_tdep (void)
 {
