You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Declaring a module alias for a target that isn't a recursive dependency of the product the alias is being defined for doesn't actually work, instead it gets silently skipped. This adds a diagnostic for this case.
I don't know if this scenario should work, but it doesn't in practice, so even if it is supposed to, a diagnostic seems better than nothing.
Separately, it seems problematic that the duplicateModule diagnostic contains a completely context-free suggestion to use module aliases. This leads to the very confusing outcome that it is being suggested in this particular case which cannot be resolved using a module alias.
rdar://114200576
observabilityScope.emit(info:"Module alias '\(prechainVal.alias)' defined in package '\(prechainVal.consumingPackage)' for target '\(relTarget.name)' in package/product '\(productID)' is overridden by alias '\(val)'; if this override is not intended, remove '\(val)' from 'moduleAliases' in its manifest")
observabilityScope.emit(warning:"module alias for target '\(productAlias.name)', declared in package '\(productAlias.consumingPackage)', does not match any recursive target dependency of product '\(productAlias.productName)' from package '\(productAlias.originPackage)'")
0 commit comments