Am 13.03.2017 um 23:03 schrieb Bram Moolenaar:
Andy Wokula wrote:
(I'm using a pre-Vim 8.0 version).
Still: can somebody confirm the following bug:
" script.vim
let s:f = {}
func! s:f.Foo()
endfunc
let s:f.Bar = s:f.Foo
let s:f
finish
Error detected while processing script.vim:
line 15:
E724: variable nested too deep for displaying
s:f {'Foo': function('74'), 'Bar': function('74', {'Foo':
function('74'), 'Bar': function('74', {'Foo': function('74'), 'Bar':
function('74', {'Foo': function('74'), 'Bar': function('74', {'Foo':
function('74'), 'Bar': function('74', {'Foo': function('74'), 'Bar':
function('74', {'Foo': function('74'), 'Bar': function('74', {'Foo':
function('74'), 'Bar': function('74', {'Foo': function('74'), 'Bar':
function('74', {'Foo': function('74'), 'Bar': function('74', {'Foo':
function('74'), 'Bar': function('74', {'Foo': function('74'), 'Bar':
function('74', {'Foo': function('74'), 'Bar': function('74', {'Foo':
function('74'), 'Bar': function('74', {'Foo': function('74'), 'Bar':
function('74',
... more nesting removed ...
)})})})})})})})})})})})})})})})}
That is normal. Use this instead:
But why is s:f.Bar different from s:f.Foo ?
echo s:f
Then recursive references are shortened.
Older Vim versions did not output a dictionary at all.
I'd prefer the old behavior then.
... which anyway looked better (less garbage in the output!).
--
Andy
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups "vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to vim_dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.