gdb/

    * d-lang.h (d_main_name, builtin_d_type)
    (d_parse_symbol): Add declarations.
    (struct builtin_d_type): New data type.
    * d-lang.c (d_main_name, d_language_arch_info)
    (build_d_types, builtin_d_type): New functions.
    (enum d_primitive_types): New data type.
    (d_language_defn): Update to use d_language_arch_info and
    macro_expansion_no.
    (d_type_data): New static variable.
    (_initialize_d_language): Initialize d_type_data.
    (extract_identifiers, extract_type_info): Remove functions.
    (d_demangle): Use d_parse_symbol implemented in d-support.c to
    demangle D symbols.
    * d-support.c: New file.
    * symtab.c (find_main_name): Add call to d_main_name.

gdb/testsuite/

    * configure.ac: Create gdb.dlang/Makefile.
    * configure: Regenerate.
    * Makefile.in (ALL_SUBDIRS): Add gdb.dlang.
    * gdb.dlang/Makefile.in: New file.
    * gdb.dlang/demangle.exp: New file.
    * lib/gdb.exp (skip_d_tests): New proc.
    * lib/d-support.exp: New file.