Commit bf676f4
committed
Fix lifetime elision
struct Concrete(u32); impl Concrete { fn m(self: &Box<Self>) -> &u32 { &self.0 } } resulted in a confusing error. impl Concrete { fn n(self: &Box<&Self>) -> &u32 { &self.0 } } resulted in no error or warning, despite apparent ambiguity over the elided lifetime. Fixes #1177151 parent 525c91d commit bf676f4
File tree
5 files changed
+76
-11
lines changed- compiler/rustc_resolve/src
- tests/ui/self/elision
5 files changed
+76
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2090 | 2090 | | |
2091 | 2091 | | |
2092 | 2092 | | |
2093 | | - | |
| 2093 | + | |
2094 | 2094 | | |
2095 | | - | |
2096 | | - | |
| 2095 | + | |
| 2096 | + | |
| 2097 | + | |
| 2098 | + | |
2097 | 2099 | | |
2098 | 2100 | | |
2099 | | - | |
| 2101 | + | |
2100 | 2102 | | |
2101 | 2103 | | |
2102 | 2104 | | |
| |||
2120 | 2122 | | |
2121 | 2123 | | |
2122 | 2124 | | |
| 2125 | + | |
2123 | 2126 | | |
2124 | 2127 | | |
2125 | 2128 | | |
| |||
2143 | 2146 | | |
2144 | 2147 | | |
2145 | 2148 | | |
2146 | | - | |
2147 | | - | |
2148 | | - | |
| 2149 | + | |
| 2150 | + | |
| 2151 | + | |
| 2152 | + | |
| 2153 | + | |
2149 | 2154 | | |
2150 | 2155 | | |
2151 | 2156 | | |
| |||
2186 | 2191 | | |
2187 | 2192 | | |
2188 | 2193 | | |
2189 | | - | |
| 2194 | + | |
| 2195 | + | |
2190 | 2196 | | |
2191 | | - | |
2192 | | - | |
| 2197 | + | |
| 2198 | + | |
2193 | 2199 | | |
2194 | 2200 | | |
2195 | 2201 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
53 | 53 | | |
54 | 54 | | |
55 | 55 | | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
56 | 61 | | |
57 | 62 | | |
58 | 63 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
106 | | - | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
107 | 122 | | |
0 commit comments