This is Richie Hindle's patch

[ 643835 ] Set Next Statement for Python debuggers

with a few tweaks by me: adding an unsigned or two, mentioning that
not all jumps are allowed in the doc for pdb, adding a NEWS item and
a note to whatsnew, and AuCTeX doing something cosmetic to libpdb.tex.
diff --git a/Doc/ref/ref3.tex b/Doc/ref/ref3.tex
index eb1d658..605ed55 100644
--- a/Doc/ref/ref3.tex
+++ b/Doc/ref/ref3.tex
@@ -812,8 +812,7 @@
 variables; \member{f_globals} is used for global variables;
 \member{f_builtins} is used for built-in (intrinsic) names;
 \member{f_restricted} is a flag indicating whether the function is
-executing in restricted execution mode;
-\member{f_lineno} gives the line number and \member{f_lasti} gives the
+executing in restricted execution mode; \member{f_lasti} gives the
 precise instruction (this is an index into the bytecode string of
 the code object).
 \withsubitem{(frame attribute)}{
@@ -821,7 +820,6 @@
   \ttindex{f_code}
   \ttindex{f_globals}
   \ttindex{f_locals}
-  \ttindex{f_lineno}
   \ttindex{f_lasti}
   \ttindex{f_builtins}
   \ttindex{f_restricted}}
@@ -830,12 +828,16 @@
 function called at the start of each source code line (this is used by
 the debugger); \member{f_exc_type}, \member{f_exc_value},
 \member{f_exc_traceback} represent the most recent exception caught in
-this frame.
+this frame; \member{f_lineno} is the current line number of the frame
+--- writing to this from within a trace function jumps to the given line
+(only for the bottom-most frame).  A debugger can implement a Jump
+command (aka Set Next Statement) by writing to f_lineno.
 \withsubitem{(frame attribute)}{
   \ttindex{f_trace}
   \ttindex{f_exc_type}
   \ttindex{f_exc_value}
-  \ttindex{f_exc_traceback}}
+  \ttindex{f_exc_traceback}
+  \ttindex{f_lineno}}
 
 \item[Traceback objects] \label{traceback}
 Traceback objects represent a stack trace of an exception.  A