summaryrefslogtreecommitdiff
path: root/data/vim/patches/8.1.1180
diff options
context:
space:
mode:
Diffstat (limited to 'data/vim/patches/8.1.1180')
-rw-r--r--data/vim/patches/8.1.1180524
1 files changed, 524 insertions, 0 deletions
diff --git a/data/vim/patches/8.1.1180 b/data/vim/patches/8.1.1180
new file mode 100644
index 000000000..21174606d
--- /dev/null
+++ b/data/vim/patches/8.1.1180
@@ -0,0 +1,524 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 8.1.1180
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 8.1.1180
+Problem: Vim script debugger tests are old style.
+Solution: Turn into new style tests. (Yegappan Lakshmanan, closes #4259)
+Files: src/Makefile, src/testdir/Make_all.mak, src/testdir/Make_vms.mms,
+ src/testdir/test108.in, src/testdir/test108.ok,
+ src/testdir/test_debugger.vim
+
+
+*** ../vim-8.1.1179/src/Makefile 2019-04-11 18:13:53.337894322 +0200
+--- src/Makefile 2019-04-17 16:49:23.358684152 +0200
+***************
+*** 2176,2182 ****
+ test64 test69 \
+ test70 test72 \
+ test86 test87 test88 \
+! test94 test95 test99 test108:
+ cd testdir; rm -f $@.out; $(MAKE) -f Makefile $@.out VIMPROG=../$(VIMTESTTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
+
+ # Run individual NEW style test.
+--- 2176,2182 ----
+ test64 test69 \
+ test70 test72 \
+ test86 test87 test88 \
+! test94 test95 test99:
+ cd testdir; rm -f $@.out; $(MAKE) -f Makefile $@.out VIMPROG=../$(VIMTESTTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
+
+ # Run individual NEW style test.
+*** ../vim-8.1.1179/src/testdir/Make_all.mak 2019-04-07 14:21:26.226339351 +0200
+--- src/testdir/Make_all.mak 2019-04-17 16:49:23.358684152 +0200
+***************
+*** 28,34 ****
+ test94.out \
+ test95.out \
+ test99.out \
+- test108.out \
+ test_eval.out
+
+
+--- 28,33 ----
+***************
+*** 97,102 ****
+--- 96,102 ----
+ test_cscope \
+ test_cursor_func \
+ test_curswant \
++ test_debugger \
+ test_delete \
+ test_diffmode \
+ test_digraph \
+***************
+*** 312,317 ****
+--- 312,318 ----
+ test_crypt.res \
+ test_cscope.res \
+ test_curswant.res \
++ test_debugger.res \
+ test_diffmode.res \
+ test_digraph.res \
+ test_display.res \
+*** ../vim-8.1.1179/src/testdir/Make_vms.mms 2018-07-14 21:48:42.444978086 +0200
+--- src/testdir/Make_vms.mms 2019-04-17 16:49:23.358684152 +0200
+***************
+*** 80,86 ****
+ test42.out test44.out test48.out test49.out \
+ test64.out test69.out \
+ test72.out test77a.out test88.out \
+! test94.out test95.out test99.out test108.out \
+ test_eval.out
+
+ # Known problems:
+--- 80,86 ----
+ test42.out test44.out test48.out test49.out \
+ test64.out test69.out \
+ test72.out test77a.out test88.out \
+! test94.out test95.out test99.out \
+ test_eval.out
+
+ # Known problems:
+*** ../vim-8.1.1179/src/testdir/test108.in 2016-01-16 22:06:08.000000000 +0100
+--- src/testdir/test108.in 1970-01-01 01:00:00.000000000 +0100
+***************
+*** 1,88 ****
+- Tests for backtrace debug commands. vim: set ft=vim :
+-
+- STARTTEST
+- :so small.vim
+- :lang mess C
+- :function! Foo()
+- : let var1 = 1
+- : let var2 = Bar(var1) + 9
+- : return var2
+- :endfunction
+- :
+- :function! Bar(var)
+- : let var1 = 2 + a:var
+- : let var2 = Bazz(var1) + 4
+- : return var2
+- :endfunction
+- :
+- :function! Bazz(var)
+- : let var1 = 3 + a:var
+- : let var3 = "another var"
+- : return var1
+- :endfunction
+- :new
+- :debuggreedy
+- :redir => out
+- :debug echo Foo()
+- step
+- step
+- step
+- step
+- step
+- step
+- echo "- show backtrace:\n"
+- backtrace
+- echo "\nshow variables on different levels:\n"
+- echo var1
+- up
+- back
+- echo var1
+- u
+- bt
+- echo var1
+- echo "\n- undefined vars:\n"
+- step
+- frame 2
+- echo "undefined var3 on former level:"
+- echo var3
+- fr 0
+- echo "here var3 is defined with \"another var\":"
+- echo var3
+- step
+- step
+- step
+- up
+- echo "\nundefined var2 on former level"
+- echo var2
+- down
+- echo "here var2 is defined with 10:"
+- echo var2
+- echo "\n- backtrace movements:\n"
+- b
+- echo "\nnext command cannot go down, we are on bottom\n"
+- down
+- up
+- echo "\nnext command cannot go up, we are on top\n"
+- up
+- b
+- echo "fil is not frame or finish, it is file"
+- fil
+- echo "\n- relative backtrace movement\n"
+- fr -1
+- frame
+- fra +1
+- fram
+- echo "\n- go beyond limits does not crash\n"
+- fr 100
+- fra
+- frame -40
+- fram
+- echo "\n- final result 19:"
+- cont
+- :0debuggreedy
+- :redir END
+- :$put =out
+- :w! test.out
+- :qa!
+- ENDTEST
+-
+--- 0 ----
+*** ../vim-8.1.1179/src/testdir/test108.ok 2018-11-28 20:38:34.564273386 +0100
+--- src/testdir/test108.ok 1970-01-01 01:00:00.000000000 +0100
+***************
+*** 1,82 ****
+-
+-
+-
+- - show backtrace:
+-
+- 2 function Foo[2]
+- 1 Bar[2]
+- ->0 Bazz
+- line 2: let var3 = "another var"
+-
+- show variables on different levels:
+-
+- 6
+- 2 function Foo[2]
+- ->1 Bar[2]
+- 0 Bazz
+- line 2: let var3 = "another var"
+- 3
+- ->2 function Foo[2]
+- 1 Bar[2]
+- 0 Bazz
+- line 2: let var3 = "another var"
+- 1
+-
+- - undefined vars:
+-
+- undefined var3 on former level:
+- Error detected while processing function Foo[2]..Bar[2]..Bazz:
+- line 3:
+- E121: Undefined variable: var3
+- here var3 is defined with "another var":
+- another var
+-
+- undefined var2 on former level
+- Error detected while processing function Foo[2]..Bar:
+- line 3:
+- E121: Undefined variable: var2
+- here var2 is defined with 10:
+- 10
+-
+- - backtrace movements:
+-
+- 1 function Foo[2]
+- ->0 Bar
+- line 3: End of function
+-
+- next command cannot go down, we are on bottom
+-
+- frame is zero
+-
+- next command cannot go up, we are on top
+-
+- frame at highest level: 1
+- ->1 function Foo[2]
+- 0 Bar
+- line 3: End of function
+- fil is not frame or finish, it is file
+- "[No Name]" --No lines in buffer--
+-
+- - relative backtrace movement
+-
+- 1 function Foo[2]
+- ->0 Bar
+- line 3: End of function
+- ->1 function Foo[2]
+- 0 Bar
+- line 3: End of function
+-
+- - go beyond limits does not crash
+-
+- frame at highest level: 1
+- ->1 function Foo[2]
+- 0 Bar
+- line 3: End of function
+- frame is zero
+- 1 function Foo[2]
+- ->0 Bar
+- line 3: End of function
+-
+- - final result 19:
+- 19
+-
+--- 0 ----
+*** ../vim-8.1.1179/src/testdir/test_debugger.vim 2019-04-17 16:52:46.237656050 +0200
+--- src/testdir/test_debugger.vim 2019-04-17 16:51:44.169971069 +0200
+***************
+*** 0 ****
+--- 1,232 ----
++ " Tests for the Vim script debug commands
++
++ source shared.vim
++ source screendump.vim
++
++ " Run a Vim debugger command
++ " If the expected output argument is supplied, then check for it.
++ func RunDbgCmd(buf, cmd, ...)
++ call term_sendkeys(a:buf, a:cmd . "\r")
++ call term_wait(a:buf)
++
++ if a:0 != 0
++ " Verify the expected output
++ let lnum = 20 - len(a:1)
++ for l in a:1
++ call WaitForAssert({-> assert_equal(l, term_getline(a:buf, lnum))})
++ let lnum += 1
++ endfor
++ endif
++ endfunc
++
++ " Debugger tests
++ func Test_Debugger()
++ if !CanRunVimInTerminal()
++ return
++ endif
++
++ " Create a Vim script with some functions
++ call writefile([
++ \ 'func Foo()',
++ \ ' let var1 = 1',
++ \ ' let var2 = Bar(var1) + 9',
++ \ ' return var2',
++ \ 'endfunc',
++ \ 'func Bar(var)',
++ \ ' let var1 = 2 + a:var',
++ \ ' let var2 = Bazz(var1) + 4',
++ \ ' return var2',
++ \ 'endfunc',
++ \ 'func Bazz(var)',
++ \ ' let var1 = 3 + a:var',
++ \ ' let var3 = "another var"',
++ \ ' let var3 = "value2"',
++ \ ' let var3 = "value3"',
++ \ ' return var1',
++ \ 'endfunc'], 'Xtest.vim')
++
++ " Start Vim in a terminal
++ let buf = RunVimInTerminal('-S Xtest.vim', {})
++
++ " Start the Vim debugger
++ call RunDbgCmd(buf, ':debug echo Foo()')
++
++ " Create a few stack frames by stepping through functions
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step')
++
++ " check backtrace
++ call RunDbgCmd(buf, 'backtrace', [
++ \ ' 2 function Foo[2]',
++ \ ' 1 Bar[2]',
++ \ '->0 Bazz',
++ \ 'line 2: let var3 = "another var"'])
++
++ " Check variables in different stack frames
++ call RunDbgCmd(buf, 'echo var1', ['6'])
++
++ call RunDbgCmd(buf, 'up')
++ call RunDbgCmd(buf, 'back', [
++ \ ' 2 function Foo[2]',
++ \ '->1 Bar[2]',
++ \ ' 0 Bazz',
++ \ 'line 2: let var3 = "another var"'])
++ call RunDbgCmd(buf, 'echo var1', ['3'])
++
++ call RunDbgCmd(buf, 'u')
++ call RunDbgCmd(buf, 'bt', [
++ \ '->2 function Foo[2]',
++ \ ' 1 Bar[2]',
++ \ ' 0 Bazz',
++ \ 'line 2: let var3 = "another var"'])
++ call RunDbgCmd(buf, 'echo var1', ['1'])
++
++ " Undefined variables
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'frame 2')
++ call RunDbgCmd(buf, 'echo var3', [
++ \ 'Error detected while processing function Foo[2]..Bar[2]..Bazz:',
++ \ 'line 3:',
++ \ 'E121: Undefined variable: var3'])
++
++ " var3 is defined in this level with some other value
++ call RunDbgCmd(buf, 'fr 0')
++ call RunDbgCmd(buf, 'echo var3', ['another var'])
++
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'step', [
++ \ 'function Foo[2]..Bar',
++ \ 'line 3: End of function'])
++ call RunDbgCmd(buf, 'up')
++
++ " Undefined var2
++ call RunDbgCmd(buf, 'echo var2', [
++ \ 'Error detected while processing function Foo[2]..Bar:',
++ \ 'line 3:',
++ \ 'E121: Undefined variable: var2'])
++
++ " Var2 is defined with 10
++ call RunDbgCmd(buf, 'down')
++ call RunDbgCmd(buf, 'echo var2', ['10'])
++
++ " Backtrace movements
++ call RunDbgCmd(buf, 'b', [
++ \ ' 1 function Foo[2]',
++ \ '->0 Bar',
++ \ 'line 3: End of function'])
++
++ " next command cannot go down, we are on bottom
++ call RunDbgCmd(buf, 'down', ['frame is zero'])
++ call RunDbgCmd(buf, 'up')
++
++ " next command cannot go up, we are on top
++ call RunDbgCmd(buf, 'up', ['frame at highest level: 1'])
++ call RunDbgCmd(buf, 'where', [
++ \ '->1 function Foo[2]',
++ \ ' 0 Bar',
++ \ 'line 3: End of function'])
++
++ " fil is not frame or finish, it is file
++ call RunDbgCmd(buf, 'fil', ['"[No Name]" --No lines in buffer--'])
++
++ " relative backtrace movement
++ call RunDbgCmd(buf, 'fr -1')
++ call RunDbgCmd(buf, 'frame', [
++ \ ' 1 function Foo[2]',
++ \ '->0 Bar',
++ \ 'line 3: End of function'])
++
++ call RunDbgCmd(buf, 'fr +1')
++ call RunDbgCmd(buf, 'fram', [
++ \ '->1 function Foo[2]',
++ \ ' 0 Bar',
++ \ 'line 3: End of function'])
++
++ " go beyond limits does not crash
++ call RunDbgCmd(buf, 'fr 100', ['frame at highest level: 1'])
++ call RunDbgCmd(buf, 'fra', [
++ \ '->1 function Foo[2]',
++ \ ' 0 Bar',
++ \ 'line 3: End of function'])
++
++ call RunDbgCmd(buf, 'frame -40', ['frame is zero'])
++ call RunDbgCmd(buf, 'fram', [
++ \ ' 1 function Foo[2]',
++ \ '->0 Bar',
++ \ 'line 3: End of function'])
++
++ " final result 19
++ call RunDbgCmd(buf, 'cont', ['19'])
++
++ " breakpoints tests
++
++ " Start a debug session, so that reading the last line from the terminal
++ " works properly.
++ call RunDbgCmd(buf, ':debug echo Foo()')
++
++ " No breakpoints
++ call RunDbgCmd(buf, 'breakl', ['No breakpoints defined'])
++
++ " Place some breakpoints
++ call RunDbgCmd(buf, 'breaka func Bar')
++ call RunDbgCmd(buf, 'breaklis', [' 1 func Bar line 1'])
++ call RunDbgCmd(buf, 'breakadd func 3 Bazz')
++ call RunDbgCmd(buf, 'breaklist', [' 1 func Bar line 1',
++ \ ' 2 func Bazz line 3'])
++
++ " Check whether the breakpoints are hit
++ call RunDbgCmd(buf, 'cont', [
++ \ 'Breakpoint in "Bar" line 1',
++ \ 'function Foo[2]..Bar',
++ \ 'line 1: let var1 = 2 + a:var'])
++ call RunDbgCmd(buf, 'cont', [
++ \ 'Breakpoint in "Bazz" line 3',
++ \ 'function Foo[2]..Bar[2]..Bazz',
++ \ 'line 3: let var3 = "value2"'])
++
++ " Delete the breakpoints
++ call RunDbgCmd(buf, 'breakd 1')
++ call RunDbgCmd(buf, 'breakli', [' 2 func Bazz line 3'])
++ call RunDbgCmd(buf, 'breakdel func 3 Bazz')
++ call RunDbgCmd(buf, 'breakl', ['No breakpoints defined'])
++
++ call RunDbgCmd(buf, 'cont')
++
++ " Make sure the breakpoints are removed
++ call RunDbgCmd(buf, ':echo Foo()', ['19'])
++
++ " Delete a non-existing breakpoint
++ call RunDbgCmd(buf, ':breakdel 2', ['E161: Breakpoint not found: 2'])
++
++ " Expression breakpoint
++ call RunDbgCmd(buf, ':breakadd func 2 Bazz')
++ call RunDbgCmd(buf, ':echo Bazz(1)')
++ call RunDbgCmd(buf, 'step')
++ call RunDbgCmd(buf, 'breaka expr var3')
++ call RunDbgCmd(buf, 'breakl', [' 4 expr var3'])
++ call RunDbgCmd(buf, 'cont', ['Breakpoint in "Bazz" line 4',
++ \ 'Oldval = "''another var''"',
++ \ 'Newval = "''value2''"',
++ \ 'function Bazz',
++ \ 'line 4: let var3 = "value3"'])
++
++ call RunDbgCmd(buf, 'breakdel *')
++ call RunDbgCmd(buf, 'breakl', ['No breakpoints defined'])
++
++ " finish the current function
++ call RunDbgCmd(buf, 'finish', [
++ \ 'function Bazz',
++ \ 'line 5: End of function'])
++ call RunDbgCmd(buf, 'cont')
++
++ call StopVimInTerminal(buf)
++
++ call delete('Xtest.vim')
++ endfunc
+*** ../vim-8.1.1179/src/version.c 2019-04-17 16:33:42.795349446 +0200
+--- src/version.c 2019-04-17 16:50:55.034220168 +0200
+***************
+*** 773,774 ****
+--- 773,776 ----
+ { /* Add new patch number below this line */
++ /**/
++ 1180,
+ /**/
+
+--
+FIRST HEAD: Oh! quick! get the sword out I want to cut his head off.
+THIRD HEAD: Oh, cut your own head off.
+SECOND HEAD: Yes - do us all a favour.
+ "Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
+
+ /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
+/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
+\\\ an exciting new programming language -- http://www.Zimbu.org ///
+ \\\ help me help AIDS victims -- http://ICCF-Holland.org ///