summaryrefslogtreecommitdiffstats
path: root/share
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2018-04-08 06:11:54 -0700
committerKaz Kylheku <kaz@kylheku.com>2018-04-08 06:11:54 -0700
commit29b21813ed8f6a8d166286e71bdd7d2e30af74bf (patch)
tree759a2c18a9901a34b0d09e3179499e5dfe2604e0 /share
parentf06a41a9d806b0d49550ddf6072ebb195dec854a (diff)
downloadtxr-29b21813ed8f6a8d166286e71bdd7d2e30af74bf.tar.gz
txr-29b21813ed8f6a8d166286e71bdd7d2e30af74bf.tar.bz2
txr-29b21813ed8f6a8d166286e71bdd7d2e30af74bf.zip
listener: completion: wrong use of package fallback.
The problem is that completion on pub:sym[Tab] is completing on the fallback list, because pub is the current package. If we type pub:l[Tab], we might complete to pub:list. But that's because usr:list was found in the fallbacklist; pub:list isn't that symbol, and its use will shadow usr:list. This is against the documentatiion too, which describes it the way it should work: simply that the fallback list of the current package is used under completion when no package qualifier prefix is present. * parser.c (get_visible_syms): Rename second parameter to reflect its actual meaning, rather than an original intended use. (find_matching_syms): Only allow get_visible_syms to traverse package fallback lists if qualify is false. Thus even if we are completing against the current package, if that package is being explicitly indicated with a prefix, then only the package local symbols are included.
Diffstat (limited to 'share')
0 files changed, 0 insertions, 0 deletions