projects
/
external
/
binutils.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Handle biased types
[external/binutils.git]
/
gdb
/
d-lang.c
diff --git
a/gdb/d-lang.c
b/gdb/d-lang.c
index
5fbc242
..
b80b374
100644
(file)
--- a/
gdb/d-lang.c
+++ b/
gdb/d-lang.c
@@
-1,6
+1,6
@@
/* D language support routines for GDB, the GNU debugger.
/* D language support routines for GDB, the GNU debugger.
- Copyright (C) 2005-201
6
Free Software Foundation, Inc.
+ Copyright (C) 2005-201
9
Free Software Foundation, Inc.
This file is part of GDB.
This file is part of GDB.
@@
-25,6
+25,7
@@
#include "c-lang.h"
#include "demangle.h"
#include "cp-support.h"
#include "c-lang.h"
#include "demangle.h"
#include "cp-support.h"
+#include "gdbarch.h"
/* The name of the symbol to use to get the name of the main subprogram. */
static const char D_MAIN[] = "D main";
/* The name of the symbol to use to get the name of the main subprogram. */
static const char D_MAIN[] = "D main";
@@
-204,7
+205,7
@@
static const char *d_extensions[] =
".d", NULL
};
".d", NULL
};
-
static
const struct language_defn d_language_defn =
+
extern
const struct language_defn d_language_defn =
{
"d",
"D",
{
"d",
"D",
@@
-216,7
+217,6
@@
static const struct language_defn d_language_defn =
d_extensions,
&exp_descriptor_c,
d_parse,
d_extensions,
&exp_descriptor_c,
d_parse,
- d_yyerror,
null_post_parser,
c_printchar, /* Print a character constant. */
c_printstr, /* Function to print string constant. */
null_post_parser,
c_printchar, /* Print a character constant. */
c_printstr, /* Function to print string constant. */
@@
-229,6
+229,7
@@
static const struct language_defn d_language_defn =
default_read_var_value, /* la_read_var_value */
NULL, /* Language specific skip_trampoline. */
"this",
default_read_var_value, /* la_read_var_value */
NULL, /* Language specific skip_trampoline. */
"this",
+ false, /* la_store_sym_names_in_linkage_form_p */
d_lookup_symbol_nonlocal,
basic_lookup_transparent_type,
d_demangle, /* Language specific symbol demangler. */
d_lookup_symbol_nonlocal,
basic_lookup_transparent_type,
d_demangle, /* Language specific symbol demangler. */
@@
-239,17
+240,20
@@
static const struct language_defn d_language_defn =
1, /* C-style arrays. */
0, /* String lower bound. */
default_word_break_characters,
1, /* C-style arrays. */
0, /* String lower bound. */
default_word_break_characters,
- default_
make_symbol_completion_list
,
+ default_
collect_symbol_completion_matches
,
d_language_arch_info,
default_print_array_index,
default_pass_by_reference,
c_get_string,
d_language_arch_info,
default_print_array_index,
default_pass_by_reference,
c_get_string,
- NULL, /* la_get_symbol_name_cmp */
+ c_watch_location_expression,
+ NULL, /* la_get_symbol_name_matcher */
iterate_over_symbols,
iterate_over_symbols,
+ default_search_name_hash,
&default_varobj_ops,
NULL,
NULL,
&default_varobj_ops,
NULL,
NULL,
- LANG_MAGIC
+ c_is_string_type_p,
+ "{...}" /* la_struct_too_deep_ellipsis */
};
/* Build all D language types for the specified architecture. */
};
/* Build all D language types for the specified architecture. */
@@
-262,7
+266,7
@@
build_d_types (struct gdbarch *gdbarch)
/* Basic types. */
builtin_d_type->builtin_void
/* Basic types. */
builtin_d_type->builtin_void
- = arch_type (gdbarch, TYPE_CODE_VOID,
1
, "void");
+ = arch_type (gdbarch, TYPE_CODE_VOID,
TARGET_CHAR_BIT
, "void");
builtin_d_type->builtin_bool
= arch_boolean_type (gdbarch, 8, 1, "bool");
builtin_d_type->builtin_byte
builtin_d_type->builtin_bool
= arch_boolean_type (gdbarch, 8, 1, "bool");
builtin_d_type->builtin_byte
@@
-341,13
+345,8
@@
builtin_d_type (struct gdbarch *gdbarch)
return (const struct builtin_d_type *) gdbarch_data (gdbarch, d_type_data);
}
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)
{
d_type_data = gdbarch_data_register_post_init (build_d_types);
void
_initialize_d_language (void)
{
d_type_data = gdbarch_data_register_post_init (build_d_types);
-
- add_language (&d_language_defn);
}
}