/* Go language support routines for GDB, the GNU debugger.
- Copyright (C) 2012-2016 Free Software Foundation, Inc.
+ Copyright (C) 2012-2017 Free Software Foundation, Inc.
This file is part of GDB.
return result;
}
+/* la_sniff_from_mangled_name for Go. */
+
+static int
+go_sniff_from_mangled_name (const char *mangled, char **demangled)
+{
+ *demangled = go_demangle (mangled, 0);
+ return *demangled != NULL;
+}
+
/* Given a Go symbol, return its package or NULL if unknown.
Space for the result is malloc'd, caller must free. */
case_sensitive_on,
array_row_major,
macro_expansion_no,
+ NULL,
&exp_descriptor_c,
go_parse,
go_yyerror,
basic_lookup_symbol_nonlocal,
basic_lookup_transparent_type,
go_demangle, /* Language specific symbol demangler. */
+ go_sniff_from_mangled_name,
NULL, /* Language specific
class_name_from_physname. */
go_op_print_tab, /* Expression operators for printing. */
default_print_array_index,
default_pass_by_reference,
c_get_string,
+ c_watch_location_expression,
NULL,
iterate_over_symbols,
&default_varobj_ops,
builtin_go_type->builtin_uint64
= arch_integer_type (gdbarch, 64, 1, "uint64");
builtin_go_type->builtin_float32
- = arch_float_type (gdbarch, 32, "float32", NULL);
+ = arch_float_type (gdbarch, 32, "float32", floatformats_ieee_single);
builtin_go_type->builtin_float64
- = arch_float_type (gdbarch, 64, "float64", NULL);
+ = arch_float_type (gdbarch, 64, "float64", floatformats_ieee_double);
builtin_go_type->builtin_complex64
= arch_complex_type (gdbarch, "complex64",
builtin_go_type->builtin_float32);