• P
    librustc: Implement the fully-expanded, UFCS form of explicit self. · 357d5cd9
    Patrick Walton 提交于
    This makes two changes to region inference: (1) it allows region
    inference to relate early-bound regions; and (2) it allows regions to be
    related before variance runs. The former is needed because there is no
    relation between the two regions before region substitution happens,
    while the latter is needed because type collection has to run before
    variance. We assume that, before variance is inferred, that lifetimes
    are invariant. This is a conservative overapproximation.
    
    This relates to #13885. This does not remove `~self` from the language
    yet, however.
    
    [breaking-change]
    357d5cd9
ufcs-explicit-self-bad.rs 1.1 KB