unneeded-alias

`use … as` is written where there is no collision.

compile error, shown by synod check.

An alias is only for two imports of the file that share a last segment, or an import whose last segment is the name of the importing package. Anywhere else the qualifier is the last segment of the path.

Example

Check this program to see the diagnostic.

# package p
use example.com/explain/q as qq

define Go
  result qq.One
# package q
define One
  result 1

Diagnostic

p/p.synod:2:30: error[unneeded-alias]: "as qq" is only for imports that share a last segment
  hint: write "use example.com/explain/q"

Fix

Remove the alias and use the last segment.

# package p
use example.com/explain/q

define Go
  result q.One
# package q
define One
  result 1