/* Python interface to symbol tables.
- Copyright (C) 2008-2012 Free Software Foundation, Inc.
+ Copyright (C) 2008-2013 Free Software Foundation, Inc.
This file is part of GDB.
struct stpy_symtab_object *next;
} symtab_object;
-static PyTypeObject symtab_object_type;
+static PyTypeObject symtab_object_type
+ CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF ("symtab_object");
static const struct objfile_data *stpy_objfile_data_key;
/* Require a valid symbol table. All access to symtab_object->symtab
struct salpy_sal_object *next;
} sal_object;
-static PyTypeObject sal_object_type;
+static PyTypeObject sal_object_type
+ CPYCHECKER_TYPE_OBJECT_FOR_TYPEDEF ("sal_object");
static const struct objfile_data *salpy_objfile_data_key;
/* Require a valid symbol table and line object. All access to
STPY_REQUIRE_VALID (self, symtab);
- result = PyString_FromString (symtab->filename);
+ result = PyString_FromString (symtab_to_filename_for_display (symtab));
return result;
}
{
PyObject *str_obj;
struct symtab *symtab = NULL;
+ const char *filename;
STPY_REQUIRE_VALID (self, symtab);
+ filename = symtab_to_filename_for_display (symtab);
- str_obj = PyString_Decode (symtab->filename,
- strlen (symtab->filename),
+ str_obj = PyString_Decode (filename, strlen (filename),
host_charset (), NULL);
return str_obj;
}
static PyObject *
salpy_str (PyObject *self)
{
- char *s, *filename;
+ char *s;
+ const char *filename;
sal_object *sal_obj;
PyObject *result;
struct symtab_and_line *sal = NULL;
sal_obj = (sal_object *) self;
filename = (sal_obj->symtab == (symtab_object *) Py_None)
- ? "<unknown>" : sal_obj->symtab->symtab->filename;
+ ? "<unknown>" : symtab_to_filename_for_display (sal_obj->symtab->symtab);
s = xstrprintf ("symbol and line for %s, line %d", filename,
sal->line);