(struct breakpoint_object): Forward declare.
* defs.h (PyObject) [!HAVE_PYTHON]: Don't define.
* varobj.c (PyObject) [!HAVE_PYTHON]: Define.
* python/py-breakpoint.c (build_bp_list): Cast py_bp_object to
PyObject pointer.
(gdbpy_breakpoint_created): Remove casts around py_bp_object
accesses.
+2010-11-25 Pedro Alves <pedro@codesourcery.com>
+
+ * breakpoint.h: No longer include python.h or python-internal.h.
+ (struct breakpoint_object): Forward declare.
+ * defs.h (PyObject) [!HAVE_PYTHON]: Don't define.
+ * varobj.c (PyObject) [!HAVE_PYTHON]: Define.
+ * python/py-breakpoint.c (build_bp_list): Cast py_bp_object to
+ PyObject pointer.
+ (gdbpy_breakpoint_created): Remove casts around py_bp_object
+ accesses.
+
2010-11-24 Joel Brobecker <brobecker@adacore.com>
* rs6000-tdep.c (bfd_uses_spe_extensions): Use bfd_elf_get_obj_attr_int
#include "value.h"
#include "vec.h"
-#if HAVE_PYTHON
-#include "python/python.h"
-#include "python/python-internal.h"
-#endif
-
struct value;
struct block;
+struct breakpoint_object;
/* This is the maximum number of bytes a breakpoint instruction can take.
Feel free to increase it. It's just used in a few places to size
This is always NULL for a GDB that is not script enabled. It
can sometimes be NULL for enabled GDBs as not all breakpoint
types are tracked by the Python scripting API. */
- PyObject *py_bp_object;
+ struct breakpoint_object *py_bp_object;
};
typedef struct breakpoint *breakpoint_p;
extern void initialize_progspace (void);
extern void initialize_inferiors (void);
-#ifndef HAVE_PYTHON
-typedef int PyObject;
-#endif
-
#endif /* #ifndef DEFS_H */
build_bp_list (struct breakpoint *b, void *arg)
{
PyObject *list = arg;
- PyObject *bp = b->py_bp_object;
+ PyObject *bp = (PyObject *) b->py_bp_object;
int iserr = 0;
/* Not all breakpoints will have a companion Python object.
{
newbp->number = num;
newbp->bp = bp;
- newbp->bp->py_bp_object = (PyObject *) newbp;
+ newbp->bp->py_bp_object = newbp;
Py_INCREF (newbp);
++bppy_live;
}
if (! bp)
return;
- bp_obj = ((breakpoint_object *) bp->py_bp_object);
+ bp_obj = bp->py_bp_object;
if (bp_obj)
{
bp_obj->bp = NULL;
#if HAVE_PYTHON
#include "python/python.h"
#include "python/python-internal.h"
+#else
+typedef int PyObject;
#endif
/* Non-zero if we want to see trace of varobj level stuff. */