public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
* [SCM]  archer-pmuldoon-python-backtrace: Remove whitespace and clarify some comments.
@ 2013-02-26 11:00 pmuldoon
  0 siblings, 0 replies; only message in thread
From: pmuldoon @ 2013-02-26 11:00 UTC (permalink / raw)
  To: archer-commits

The branch, archer-pmuldoon-python-backtrace has been updated
       via  d39df4354f1b9037bc4879ad66f1aebb3181c50b (commit)
      from  79ce26e92f6596033a14bba223e4839725fed99c (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email.

- Log -----------------------------------------------------------------
commit d39df4354f1b9037bc4879ad66f1aebb3181c50b
Author: Phil Muldoon <pmuldoon@redhat.com>
Date:   Tue Feb 26 11:00:13 2013 +0000

    Remove whitespace and clarify some comments.

-----------------------------------------------------------------------

Summary of changes:
 gdb/python/lib/gdb/command/frame_filters.py |    9 ++--
 gdb/python/lib/gdb/frames.py                |    7 +--
 gdb/python/py-framefilter.c                 |   75 ++++++++++++++-------------
 gdb/python/python.h                         |    6 +-
 4 files changed, 49 insertions(+), 48 deletions(-)

First 500 lines of diff:
diff --git a/gdb/python/lib/gdb/command/frame_filters.py b/gdb/python/lib/gdb/command/frame_filters.py
index 4e464e9..01df066 100644
--- a/gdb/python/lib/gdb/command/frame_filters.py
+++ b/gdb/python/lib/gdb/command/frame_filters.py
@@ -203,7 +203,7 @@ class InfoFrameFilter(gdb.Command):
                            specified by GDB user commands.
         """
 
-        sorted_frame_filters = sorted (frame_filters.items(), 
+        sorted_frame_filters = sorted (frame_filters.items(),
                                        key=lambda i: _get_priority(i[1]),
                                        reverse=True)
 
@@ -266,7 +266,7 @@ def _do_enable_frame_filter(command_tuple, flag):
     _set_enabled(ff, flag)
 
 def _complete_frame_filter_list (text,word):
-    
+
     filter_locations = ["global","progspace"]
     for objfile in gdb.objfiles():
         filter_locations.append(objfile.filename)
@@ -288,7 +288,7 @@ def _complete_frame_filter_list (text,word):
     return flist
 
 def _complete_frame_filter_name (word, printer_list):
-    
+
     printer_keys = printer_list.keys()
     if (word == ""):
         return printer_keys
@@ -374,7 +374,7 @@ class SetFrameFilterPriority(gdb.Command):
         super(SetFrameFilterPriority, self).__init__("set python " \
                                                      "frame-filter priority",
                                                      gdb.COMMAND_DATA)
- 
+
     def _parse_pri_arg(self, arg):
         """Internal worker to parse a priority from a tuple.
 
@@ -537,4 +537,3 @@ EnableFrameFilter()
 DisableFrameFilter()
 SetFrameFilterPriority()
 ShowFrameFilterPriority()
-
diff --git a/gdb/python/lib/gdb/frames.py b/gdb/python/lib/gdb/frames.py
index f637a7a..1fdca5a 100644
--- a/gdb/python/lib/gdb/frames.py
+++ b/gdb/python/lib/gdb/frames.py
@@ -94,7 +94,7 @@ def execute_frame_filters(frame, frame_low, frame_high):
             sliced.append(frame_item)
 
         return iter(sliced)
-            
+
     # -1 for frame_high means until the end of the stack frame, and
     # None means to the end of the iterator to islice.
     if frame_high == -1:
@@ -103,8 +103,7 @@ def execute_frame_filters(frame, frame_low, frame_high):
         # The end argument for islice is a count, not a position, so
         # add one as frames start as zero.
         frame_high = frame_high + 1;
-    
-        
-    sliced = itertools.islice(frame_iterator, frame_low, frame_high) 
+
+    sliced = itertools.islice(frame_iterator, frame_low, frame_high)
 
     return sliced
diff --git a/gdb/python/py-framefilter.c b/gdb/python/py-framefilter.c
index 0a118c5..3e075a8 100644
--- a/gdb/python/py-framefilter.c
+++ b/gdb/python/py-framefilter.c
@@ -28,7 +28,6 @@
 #include "valprint.h"
 #include "annotate.h"
 #include "hashtab.h"
-#include "mi/mi-cmds.h"
 #include "demangle.h"
 #include "mi/mi-cmds.h"
 #include "python-internal.h"
@@ -41,6 +40,7 @@ typedef enum mi_print_types
   MI_PRINT_LOCALS
 } mi_print_types;
 
+
 /* Helper function to extract a symbol, name and language definition
    from a Python object that conforms to the "Symbol Value" interface.
    OBJ is the Python object to extract the values from.  NAME is a
@@ -59,17 +59,17 @@ extract_sym (PyObject *obj, char **name, struct symbol **sym,
 	     const struct language_defn **language)
 {
   PyObject *result = PyObject_CallMethod (obj, "symbol", NULL);
-  
+
   if (! result)
     return PY_BT_ERROR;
-  
+
   /* For 'symbol' callback, the function can return a symbol or a
      string.  */
   if (PyString_Check (result))
     {
       *name = python_string_to_host_string (result);
       Py_DECREF (result);
-      
+
       if (! *name)
 	return PY_BT_ERROR;
       *language = python_language;
@@ -80,9 +80,9 @@ extract_sym (PyObject *obj, char **name, struct symbol **sym,
       /* This type checks 'result' during the conversion so we
 	 just call it unconditionally and check the return.  */
       *sym = symbol_object_to_symbol (result);
-      
+
       Py_DECREF (result);
-      
+
       if (! *sym)
 	{
 	  PyErr_SetString (PyExc_RuntimeError,
@@ -90,11 +90,11 @@ extract_sym (PyObject *obj, char **name, struct symbol **sym,
 			     "gdb.Symbol or a Python string."));
 	  return PY_BT_ERROR;
 	}
-      
+
       /* Duplicate the symbol name, so the caller has consistency
 	 in garbage collection.  */
       *name = xstrdup (SYMBOL_PRINT_NAME (*sym));
-      
+
       if (language_mode == language_mode_auto)
 	*language = language_def (SYMBOL_LANGUAGE (*sym));
       else
@@ -178,7 +178,7 @@ mi_should_print (struct symbol *sym, enum mi_print_types type)
       if (type == MI_PRINT_ALL)
 	print_me = 1;
       else if (type == MI_PRINT_LOCALS)
-	print_me = !SYMBOL_IS_ARGUMENT (sym);
+	print_me = ! SYMBOL_IS_ARGUMENT (sym);
       else
 	print_me = SYMBOL_IS_ARGUMENT (sym);
     }
@@ -214,7 +214,7 @@ py_print_type (struct ui_out *out, struct value *val)
       gdbpy_convert_exception (except);
       return PY_BT_ERROR;
     }
-  
+
   return 1;
 }
 
@@ -237,7 +237,9 @@ py_print_value (struct ui_out *out, struct value *val,
   /* MI does not print certain values, differentiated by type,
      depending on what MI_PRINT_TYPE indicates.  Test
      type against option.  For CLI print all values.  */
-  if (args_type == MI_PRINT_SIMPLE_VALUES || args_type == MI_PRINT_ALL_VALUES)
+  if (args_type == MI_PRINT_SIMPLE_VALUES
+      || args_type == MI_PRINT_ALL_VALUES)
+
     {
       struct type *type;
 
@@ -291,7 +293,7 @@ get_py_iter_from_func (PyObject *filter, char *func)
 {
   PyObject *result = PyObject_CallMethod (filter, func, NULL);
 
-  if (result)    
+  if (result)
     {
       if (result == Py_None)
 	{
@@ -301,9 +303,8 @@ get_py_iter_from_func (PyObject *filter, char *func)
       else
 	{
 	  PyObject *iterator = PyObject_GetIter (result);
-      
+
 	  Py_DECREF (result);
-      
 	  return iterator;
 	}
     }
@@ -349,7 +350,11 @@ py_print_single_arg (struct ui_out *out,
     val = fv;
 
   /*  MI has varying rules for tuples, but generally if there is only
-      one element in each item in the list, do not start a tuple.  */
+      one element in each item in the list, do not start a tuple.  The
+      exception is -stack-list-variables which emits an ARGS="1" field
+      if the value is a frame argument.  This is denoted in this
+      function with PRINT_ARGS_FIELD which is flag from the caller to
+      emit the ARGS field.  */
   if (ui_out_is_mi_like_p (out))
     {
       if (print_args_field || args_type != MI_PRINT_NO_VALUES)
@@ -359,13 +364,13 @@ py_print_single_arg (struct ui_out *out,
     TRY_CATCH (except, RETURN_MASK_ALL)
       {
 	annotate_arg_begin ();
-	
+
 	/* If frame argument is populated, check for entry-values and the
 	   entry value options.  */
 	if (fa)
 	  {
 	    struct ui_file *stb;
-	    
+
 	    stb = mem_fileopen ();
 	    make_cleanup_ui_file_delete (stb);
 	    fprintf_symbol_filtered (stb, SYMBOL_PRINT_NAME (fa->sym),
@@ -391,10 +396,10 @@ py_print_single_arg (struct ui_out *out,
 	  ui_out_field_string (out, "name", sym_name);
 
 	annotate_arg_name_end ();
-	
+
 	if (! ui_out_is_mi_like_p (out))
 	  ui_out_text (out, "=");
-	
+
 	if (print_args_field)
 	  ui_out_field_int (out, "arg", 1);
       }
@@ -404,7 +409,9 @@ py_print_single_arg (struct ui_out *out,
 	goto error;
       }
 
-  /* For MI print the type, but only for simple values.  */
+  /* For MI print the type, but only for simple values.  This seems
+     weird, but this is how MI choose to format the various output
+     types.  */
   if (args_type == MI_PRINT_SIMPLE_VALUES)
     {
       if (! py_print_type (out, val))
@@ -420,10 +427,9 @@ py_print_single_arg (struct ui_out *out,
       gdbpy_convert_exception (except);
       goto error;
     }
-  
 
-    /* If the output is to the CLI, and the user option set print
-     frame-arguments is set to none, just output "...".  */
+  /* If the output is to the CLI, and the user option "set print
+     frame-arguments" is set to none, just output "...".  */
   if (args_type == CLI_NO_VALUES)
     {
       TRY_CATCH (except, RETURN_MASK_ALL)
@@ -438,9 +444,8 @@ py_print_single_arg (struct ui_out *out,
     }
   else
     {
-      /* If CLI, and the first if condition above not true always
-	 print values.  For MI do not print values if the enumerator
-	 is PRINT_NO_VALUES.  */
+      /* Otherwise, print the value for both MI and the CLI, except
+	 for the case of MI_PRINT_NO_VALUES.  */
       if (args_type != MI_PRINT_NO_VALUES)
 	{
 	  if (! py_print_value (out, val, opts, args_type, language))
@@ -665,7 +670,7 @@ enumerate_locals (PyObject *iter,
       int success = PY_BT_ERROR;
       struct symbol *sym;
       volatile struct gdb_exception except;
-    
+
       success = extract_sym (item, &sym_name, &sym, &language);
       if (! success)
 	{
@@ -729,7 +734,7 @@ enumerate_locals (PyObject *iter,
 	{
 	  ui_out_field_string (out, "name", sym_name);
 	  xfree (sym_name);
-	  
+
 	  if (! ui_out_is_mi_like_p (out))
 	    ui_out_text (out, " = ");
 	}
@@ -738,7 +743,6 @@ enumerate_locals (PyObject *iter,
 	  gdbpy_convert_exception (except);
 	  goto error;
 	}
-      
 
       if (args_type == MI_PRINT_SIMPLE_VALUES)
 	{
@@ -889,7 +893,7 @@ py_print_args (PyObject *filter,
       gdbpy_convert_exception (except);
       goto args_error;
     }
-  
+
   do_cleanups (old_chain);
   return 1;
 
@@ -1269,7 +1273,6 @@ py_print_frame (PyObject *filter, int flags, enum py_frame_args args_type,
 static PyObject *
 bootstrap_python_frame_filters (struct frame_info *frame, int
 				frame_low, int frame_high)
-  
 {
   struct cleanup *cleanups =
     make_cleanup (null_cleanup, NULL);
@@ -1285,7 +1288,7 @@ bootstrap_python_frame_filters (struct frame_info *frame, int
   if (! module)
     goto error;
   make_cleanup_py_decref (module);
-  
+
   sort_func = PyObject_GetAttrString (module, "execute_frame_filters");
   if (! sort_func)
     goto error;
@@ -1318,7 +1321,7 @@ bootstrap_python_frame_filters (struct frame_info *frame, int
     }
   else
     Py_RETURN_NONE;
-  
+
   return iterator;
 
  error:
@@ -1340,7 +1343,7 @@ bootstrap_python_frame_filters (struct frame_info *frame, int
 
 int apply_frame_filter (struct frame_info *frame, int flags,
 			enum py_frame_args args_type,
-			struct ui_out *out, int frame_low, 
+			struct ui_out *out, int frame_low,
 			int frame_high)
 
 {
@@ -1389,7 +1392,7 @@ int apply_frame_filter (struct frame_info *frame, int flags,
     {
       success = py_print_frame (item, flags, args_type, out, 0,
 				levels_printed);
-      
+
       /* Do not exit on error printing a single frame.  Print the
 	 error and continue with other frames.  */
       if (success == PY_BT_ERROR)
@@ -1401,7 +1404,7 @@ int apply_frame_filter (struct frame_info *frame, int flags,
  done:
   do_cleanups (cleanups);
   return success;
-  
+
  error:
   gdbpy_print_stack ();
   do_cleanups (cleanups);
diff --git a/gdb/python/python.h b/gdb/python/python.h
index 3c47f58..2f8205e 100644
--- a/gdb/python/python.h
+++ b/gdb/python/python.h
@@ -67,11 +67,11 @@ typedef enum py_frame_args
   /* Print no values for arguments when invoked from the CLI.  */
   CLI_NO_VALUES,
 
-  /* Print only scalar values for arguments when invoked from the 
+  /* Print only scalar values for arguments when invoked from the
      CLI. */
   CLI_SCALAR_VALUES,
 
-  /* Print all values for arguments when invoked from the 
+  /* Print all values for arguments when invoked from the
      CLI. */
   CLI_ALL_VALUES,
 
@@ -94,7 +94,7 @@ int apply_val_pretty_printer (struct type *type, const gdb_byte *valaddr,
 
 int apply_frame_filter (struct frame_info *frame, int flags,
 			enum py_frame_args args_type,
-			struct ui_out *out, int frame_low, 
+			struct ui_out *out, int frame_low,
 			int frame_high);
 
 void preserve_python_values (struct objfile *objfile, htab_t copied_types);


hooks/post-receive
--
Repository for Project Archer.


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2013-02-26 11:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-02-26 11:00 [SCM] archer-pmuldoon-python-backtrace: Remove whitespace and clarify some comments pmuldoon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).