gdb/

    * d-lang.c (d_language_defn): Change macro_expansion_c to
    macro_expansion_no.
gdb/testsuite/

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

    * d-lang.h (d_main_name): Add declaration.
    * d-lang.c (d_main_name): New function.
    * symtab.c (find_main_name): Add call to d_main_name.
gdb/

    * d-lang.h (struct builtin_d_type): New data type.
    (builtin_d_type): Add declaration.
    * d-lang.c (d_language_arch_info, build_d_types)
    (builtin_d_type): New functions.
    (enum d_primitive_types): New data type.
    (d_language_defn): Change c_language_arch_info to
    d_language_arch_info.
    (d_type_data): New static variable.
    _initialize_d_language): Initialize d_type_data.

gdb/testsuite/

    * gdb.dlang/primitive-types.exp: New file.
gdb/

    * d-lang.h (d_parse_symbol): Add declaration.
    * d-lang.c (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.

gdb/testsuite/

    * gdb.dlang/demangle.exp: New file.
Testing D expression parser