-
Notifications
You must be signed in to change notification settings - Fork 676
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Avoid invalid expression and type mismatch #491
base: master
Are you sure you want to change the base?
Conversation
Invalid expression error is produced when trying to open certain tags
@@ -1084,8 +1084,11 @@ fu! s:AcceptSelection(action) | |||
let type = exttype == 'dict' ? exttype : 'list' | |||
en | |||
en | |||
let actargs = type == 'dict' ? [{ 'action': md, 'line': line, 'icr': icr }] |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Invalid expression error was triggered with this line.
Can you provide steps to reproduce the error? Does updating Vim help? It looks like the parser confuses the colons in the Dictionary with operators. |
To reproduce the error:
Tested with vim 7.1 |
Thanks! I can't reproduce it in Vim 7.1.0 to 7.4.0, but in 7.0.0. Looks like it's an old bug with the parser when Dictionary was new. I use ternary operators often, however, so I may have to change a few other places as well. |
Thank you for the quick response! 👍 |
@davebv is this still an issue? Wondering if this needs merging into https://github.com/ctrlpvim/ctrlp.vim or not. |
I believe this will help when using dictionaries in Vim. I have problems with 7.1 but cannot reproduce it in newer versions. |
Invalid expression error is produced when trying to open certain tags: This avoids the error:
Error detected while processing function 57_AcceptSelection:
line 30:
E685: Internal error: get_tv_string_buf()
E15: Invalid expression: type == 'dict' ? [{ 'action': md, 'line': line, 'icr': icr }] : [md, line]
line 31:
E121: Undefined variable: actargs
E116: Invalid arguments for function call