Tracking issue: Replacing an struct/enum/union with a trait or function (or vice versa) should not trigger "item missing" lints #313
Labels
A-lint
Area: new or existing lint
C-enhancement
Category: raise the bar on expectations
E-help-wanted
Call for participation: Help is requested to fix this issue.
E-mentor
Call for participation: Mentorship is available for this issue.
If an item importable by some path (say, a struct) is replaced by another kind of item (say, a trait) importable under the same path, this should not be reported as the original item being missing — this will unnecessarily confuse users, and the replacement isn't even necessarily a breaking change (e.g. see #297).
The resolution of #297 (via #306, #308, and #312) resolves the cases where a struct is converted into an enum or union (whenever unions in general are implemented). This resolves the most immediately painful aspect, but is not a full resolution.
Remaining tasks:
Importable
a subtype ofItem
trustfall-rustdoc-adapter#35trait
orfn
Importable
a subtype ofItem
trustfall-rustdoc-adapter#35dyn
as of a couple of Rust editions ago)Union
type, making union types queriable trustfall-rustdoc-adapter#36Union
type, making union types queriable trustfall-rustdoc-adapter#36 and MakeImportable
a subtype ofItem
trustfall-rustdoc-adapter#35X::Foo
whereX
is a module or enum,Foo
is a function or variant.X: TraitName
bounds with anything but a traitThe text was updated successfully, but these errors were encountered: