GDB (xrefs)
Enumerations | Functions | Variables
/tmp/gdb-7.10/gdb/go-lang.c File Reference
#include "defs.h"
#include "gdb_obstack.h"
#include "block.h"
#include "symtab.h"
#include "language.h"
#include "varobj.h"
#include "go-lang.h"
#include "c-lang.h"
#include "parser-defs.h"
#include <ctype.h>

Go to the source code of this file.

Enumerations

enum  go_primitive_types {
  go_primitive_type_void, go_primitive_type_char, go_primitive_type_bool, go_primitive_type_int,
  go_primitive_type_uint, go_primitive_type_uintptr, go_primitive_type_int8, go_primitive_type_int16,
  go_primitive_type_int32, go_primitive_type_int64, go_primitive_type_uint8, go_primitive_type_uint16,
  go_primitive_type_uint32, go_primitive_type_uint64, go_primitive_type_float32, go_primitive_type_float64,
  go_primitive_type_complex64, go_primitive_type_complex128, nr_go_primitive_types
}
 

Functions

const char * go_main_name (void)
 
static int gccgo_string_p (struct type *type)
 
static int sixg_string_p (struct type *type)
 
enum go_type go_classify_struct_type (struct type *type)
 
static void unpack_package_and_object (char *buf, const char **packagep, const char **objectp)
 
static char * unpack_mangled_go_symbol (const char *mangled_name, const char **packagep, const char **objectp, const char **method_type_packagep, const char **method_type_objectp, int *method_type_is_pointerp)
 
char * go_demangle (const char *mangled_name, int options)
 
char * go_symbol_package_name (const struct symbol *sym)
 
char * go_block_package_name (const struct block *block)
 
static void go_language_arch_info (struct gdbarch *gdbarch, struct language_arch_info *lai)
 
static void * build_go_types (struct gdbarch *gdbarch)
 
const struct builtin_go_typebuiltin_go_type (struct gdbarch *gdbarch)
 
void _initialize_go_language (void)
 

Variables

static const char GO_MAIN_MAIN [] = "main.main"
 
static const struct op_print go_op_print_tab []
 
static const struct language_defn go_language_defn
 
static struct gdbarch_datago_type_data
 
initialize_file_ftype _initialize_go_language
 

Enumeration Type Documentation

Enumerator
go_primitive_type_void 
go_primitive_type_char 
go_primitive_type_bool 
go_primitive_type_int 
go_primitive_type_uint 
go_primitive_type_uintptr 
go_primitive_type_int8 
go_primitive_type_int16 
go_primitive_type_int32 
go_primitive_type_int64 
go_primitive_type_uint8 
go_primitive_type_uint16 
go_primitive_type_uint32 
go_primitive_type_uint64 
go_primitive_type_float32 
go_primitive_type_float64 
go_primitive_type_complex64 
go_primitive_type_complex128 
nr_go_primitive_types 

Definition at line 484 of file go-lang.c.

Function Documentation

void _initialize_go_language ( void  )

Definition at line 664 of file go-lang.c.

References add_language(), build_go_types(), and gdbarch_data_register_post_init().

static void* build_go_types ( struct gdbarch gdbarch)
static
const struct builtin_go_type* builtin_go_type ( struct gdbarch gdbarch)

Definition at line 656 of file go-lang.c.

References gdbarch_data().

Referenced by build_go_types(), go_language_arch_info(), and parse_go_float().

static int gccgo_string_p ( struct type type)
static
char* go_block_package_name ( const struct block block)

Definition at line 421 of file go-lang.c.

References BLOCK_FUNCTION, BLOCK_SUPERBLOCK, and go_symbol_package_name().

Referenced by classify_name().

enum go_type go_classify_struct_type ( struct type type)

Definition at line 120 of file go-lang.c.

References CHECK_TYPEDEF, gccgo_string_p(), GO_TYPE_NONE, GO_TYPE_STRING, and sixg_string_p().

Referenced by go_val_print().

char* go_demangle ( const char *  mangled_name,
int  options 
)
static void go_language_arch_info ( struct gdbarch gdbarch,
struct language_arch_info lai 
)
static
const char* go_main_name ( void  )

Definition at line 55 of file go-lang.c.

References GO_MAIN_MAIN, and lookup_minimal_symbol().

Referenced by find_main_name().

char* go_symbol_package_name ( const struct symbol sym)
static int sixg_string_p ( struct type type)
static

Definition at line 106 of file go-lang.c.

References TYPE_NFIELDS, and TYPE_TAG_NAME.

Referenced by go_classify_struct_type().

static char* unpack_mangled_go_symbol ( const char *  mangled_name,
const char **  packagep,
const char **  objectp,
const char **  method_type_packagep,
const char **  method_type_objectp,
int method_type_is_pointerp 
)
static

Definition at line 183 of file go-lang.c.

References gdb_assert, len, startswith(), and unpack_package_and_object().

Referenced by go_demangle(), and go_symbol_package_name().

static void unpack_package_and_object ( char *  buf,
const char **  packagep,
const char **  objectp 
)
static

Definition at line 139 of file go-lang.c.

References gdb_assert.

Referenced by unpack_mangled_go_symbol().

Variable Documentation

initialize_file_ftype _initialize_go_language
const struct language_defn go_language_defn
static

Definition at line 559 of file go-lang.c.

const char GO_MAIN_MAIN[] = "main.main"
static

Definition at line 47 of file go-lang.c.

Referenced by go_main_name().

const struct op_print go_op_print_tab[]
static

Definition at line 450 of file go-lang.c.

struct gdbarch_data* go_type_data
static

Definition at line 653 of file go-lang.c.