Skip to content
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

x/tools/gopls: completing inside new() suggests keywords first #40274

Closed
muirdm opened this issue Jul 17, 2020 · 2 comments
Closed

x/tools/gopls: completing inside new() suggests keywords first #40274

muirdm opened this issue Jul 17, 2020 · 2 comments

Comments

@muirdm
Copy link

@muirdm muirdm commented Jul 17, 2020

package main

func main() {
	var _ *int = new()
}

Completing inside new() should offer int first, but it instead offers chan, func, map, and then int.

Probably addKeywordCompletions shouldn't add keyword type name candidates if there is already an expected type (int is the expected type in the above example).

@gopherbot gopherbot added this to the Unreleased milestone Jul 17, 2020
@stamblerre stamblerre removed this from the Unreleased milestone Jul 17, 2020
@gopherbot
Copy link

@gopherbot gopherbot commented Aug 2, 2020

Change https://golang.org/cl/246360 mentions this issue: internal/lsp/source: improve unnamed type completion

gopherbot pushed a commit to golang/tools that referenced this issue Aug 12, 2020
Tweak a few things so that unnamed, non-basic types are offered as
completions in certain cases:

    var _ []int = make(<>) // now properly suggests "[]int"

I also fixed type related keywords to not be offered if there is an
expected type:

    var _ *int = new(<>) // don't offer "func", etc.

There are still some cases that don't work properly. For example:

    var _ [][]int = make([]<>) // doesn't offer "[]int"

This would be harder to fix given the way things currently work.

Fixes golang/go#40275, golang/go#40274.

Change-Id: I2577d5863d4757845ad3ff7dbb125106b649a6b6
Reviewed-on: https://go-review.googlesource.com/c/tools/+/246360
Run-TryBot: Muir Manders <muir@mnd.rs>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rebecca Stambler <rstambler@golang.org>
@muirdm
Copy link
Author

@muirdm muirdm commented Aug 12, 2020

Didn't do "Fixes" comment right, but this was fixed in above CL.

@muirdm muirdm closed this Aug 12, 2020
@stamblerre stamblerre added this to the gopls/v.0.4.5 milestone Aug 13, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
3 participants