Hi, in gdbtypes.h are some macros based on current_gdbarch (eg. builtin_type_void_data_ptr). This patch replaces builtin_type_void_data_ptr by its definition in the source tree and then replaces current_gdbarch by appropriate methods were possible. This patch is **NOT** tested and shall no be committed right now. Before proceeding I want to hear from you if that's a way to go for those macros or if you would prefer s.th. else to get rid of the current_gdbarch's in gdbtypes.h Thanks a lot for your effort. ChangeLog: * target-descriptions.c (tdesc_register_type): Replace builtin_type_void_data_ptr by its expression. Replace current_gdbarch by gdbarch. * target.c (default_region_ok_for_hw_watchpoint): Likewise. * std-regs (value_of_builtin_frame_fp_reg) (value_of_builtin_frame_pc_reg): Likewise. * spu-tdep.c (spu_register_type): Likewise. * sparc-tdep.c (sparc32_register_type): Likewise. * sparc64-tdep.c (sparc64_register_type): Likewise. * mips-tdep.c (mips_pseudo_register_type): Likewise. * m88k-tdep.c (m88k_register_type): Likewise. * m68k-tdep.c (m68k_register_type): Likewise. * m32r-tdep.c (m32r_register_type): Likewise. * i386-tdep.c (i386_get_longjmp_target, i386_register_type): Likewise. * h8300-tdep.c (h8300_register_type): Likewise. * gnu-v3-abi.c (gnuv3_baseclass_offset, gnuv3_method_ptr_size) (gnuv3_make_method_ptr, gnuv3_method_ptr_to_value): Likewise. * cris-tdep.c (cris_register_type, crisv32_register_type): Likewise. * bsd-uthread.c (bsd_uthread_fetch_registers) (bsd_uthread_wait, bsd_uthread_find_new_threads): Likewise. * arm-tdep.c (arm_register_type): Likewise. * amd64-tdep.c (amd64_register_type): Likewise. * alpha-tdep.c (alpha_cannot_store_register): Likewise. * solib-svr4.c (LM_ADDR_FROM_LINK_MAP, LM_DYNAMIC_FROM_LINK_MAP) (LM_NEXT, LM_NAME, IGNORE_FIRST_LINK_MAP_ENTRY, scan_dyntag) (solib_svr4_r_map, solib_svr4_r_ldsomap, open_symbol_file_object) (svr4_fetch_objfile_link_map): Replace builtin_type_void_data_ptr by its expression. * procfs.c (procfs_address_to_host_pointer (procfs_can_use_hw_breakpoint): Likewise. * objc-lang.c (print_object_command): Likewise. * f-valprint.c (f77_get_dynamic_lowerbound) (f77_get_dynamic_upperbound): Likewise. * dwarf2loc.c (dwarf_expr_read_reg): Likewise. * dwarf2-frame.c (size_of_encoded_value) (decode_frame_entry_1): Likewise. * avr-tdep.c (avr_register_type): Likewise. * auxv.c (target_auxv_parse): Likewise. * ada-valprint.c (ada_val_print_1): Likewise. * gdbtypes.h (builtin_type_void_data_ptr): Remove. -- Markus Deuling GNU Toolchain for Linux on Cell BE deuling@de.ibm.com