* breakpoint.h: No longer include python.h or python-internal.h.
authorPedro Alves <palves@redhat.com>
Thu, 25 Nov 2010 13:10:07 +0000 (13:10 +0000)
committerPedro Alves <palves@redhat.com>
Thu, 25 Nov 2010 13:10:07 +0000 (13:10 +0000)
(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.

gdb/ChangeLog
gdb/breakpoint.h
gdb/defs.h
gdb/python/py-breakpoint.c
gdb/varobj.c

index 869b8d706670b03a8353782954f9e4dc1e36a117..aa79939777e90b8cf964a6affaf5e05e333f51ef 100644 (file)
@@ -1,3 +1,14 @@
+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
index e34c2d3e84227b33b8035259f52c6119857d6b88..0fb6830ab064fc8cb35e06244f32fee53aa83ee1 100644 (file)
 #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
@@ -568,7 +564,7 @@ struct breakpoint
        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;
index d36f7c19b503cc2eb190bcd82dfcea7c37ecebcb..489de74e75365123fb52b2e83c7785ee3020d7d2 100644 (file)
@@ -1240,8 +1240,4 @@ void dummy_obstack_deallocate (void *object, void *data);
 extern void initialize_progspace (void);
 extern void initialize_inferiors (void);
 
-#ifndef HAVE_PYTHON
-typedef int PyObject;
-#endif
-
 #endif /* #ifndef DEFS_H */
index 8afa414ecb2cfa4bb2709d2abdd6381e9a6a482b..64e30ef0ea2a3a22c5e5945970a10dcfcbdb56b7 100644 (file)
@@ -636,7 +636,7 @@ static int
 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.
@@ -718,7 +718,7 @@ gdbpy_breakpoint_created (int num)
     {
       newbp->number = num;
       newbp->bp = bp;
-      newbp->bp->py_bp_object = (PyObject *) newbp;
+      newbp->bp->py_bp_object = newbp;
       Py_INCREF (newbp);
       ++bppy_live;
     }
@@ -746,7 +746,7 @@ gdbpy_breakpoint_deleted (int num)
   if (! bp)
     return;
 
-  bp_obj = ((breakpoint_object *) bp->py_bp_object);
+  bp_obj = bp->py_bp_object;
   if (bp_obj)
     {
       bp_obj->bp = NULL;
index 25518d4dafce7f1389a7ea6b665bd52a22713e5b..e87d399cee204356fbc67e9c6a359bd860328c16 100644 (file)
@@ -39,6 +39,8 @@
 #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.  */