You can execute the first line in cmd line.
The second fails. Why ?
Marc Weber
The problem is simply that after you have execute the first line, the global
variable d contains a number (1). You're not able to change the type of a variable
from number to dictionary.
If you ':unlet d' before the second line, it works (:help E706).
John
On actually reading this, I see it quite misses the point.
Strangely, the first time I executed line 1 followed by line 2, I got your error. On
retrying, I do not. I have to go elsewhere ... may think later.
John
Both seem to work for me... larger test case?
~Matt
No. I must have had d defined as int or such then. I've had a problem
with this using exec and d should have been a local not yet defined var
there. I have to go to bed now. I just didn't see any error message.
Thanks
Marc Weber
I've worked out where I went wrong. I was confused by the the 'evalLazyClosedArgs'
text (and wondered if the actual text was somehow relevant). I did a ":let d =
{'x':1}" before trying your command (putting a dictionary into d). But your command
tries to put the number 1 into d, which triggered the error.
John
Works for me. What error do you get?
Best regards,
Tony.
--
This will be a memorable month -- no matter how hard you try to forget
it.