11error[E0277]: the trait bound `Q: T3` is not satisfied
2- --> $DIR/blame-trait-error-spans-on-exprs.rs:79 :60
2+ --> $DIR/blame-trait-error-spans-on-exprs.rs:81 :60
33 |
44LL | want(Wrapper { value: Burrito { spicy: false, filling: q } });
55 | ---- required by a bound introduced by this call ^ the trait `T3` is not implemented for `Q`
@@ -29,7 +29,7 @@ LL | fn example<Q: T3>(q: Q) {
2929 | ++++
3030
3131error[E0277]: the trait bound `Q: T3` is not satisfied
32- --> $DIR/blame-trait-error-spans-on-exprs.rs:83 :84
32+ --> $DIR/blame-trait-error-spans-on-exprs.rs:85 :84
3333 |
3434LL | want(Wrapper { value: BurritoKinds::SmallBurrito { spicy: true, small_filling: q } });
3535 | ---- required by a bound introduced by this call ^ the trait `T3` is not implemented for `Q`
@@ -59,7 +59,7 @@ LL | fn example<Q: T3>(q: Q) {
5959 | ++++
6060
6161error[E0277]: the trait bound `Q: T3` is not satisfied
62- --> $DIR/blame-trait-error-spans-on-exprs.rs:87 :39
62+ --> $DIR/blame-trait-error-spans-on-exprs.rs:89 :39
6363 |
6464LL | want(Wrapper { value: Taco(false, q) });
6565 | ---- ^ the trait `T3` is not implemented for `Q`
@@ -91,7 +91,7 @@ LL | fn example<Q: T3>(q: Q) {
9191 | ++++
9292
9393error[E0277]: the trait bound `Q: T3` is not satisfied
94- --> $DIR/blame-trait-error-spans-on-exprs.rs:91 :27
94+ --> $DIR/blame-trait-error-spans-on-exprs.rs:93 :27
9595 |
9696LL | want(Wrapper { value: TacoKinds::OneTaco(false, q) });
9797 | ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `T3` is not implemented for `Q`
@@ -123,7 +123,7 @@ LL | fn example<Q: T3>(q: Q) {
123123 | ++++
124124
125125error[E0277]: the trait bound `Q: T3` is not satisfied
126- --> $DIR/blame-trait-error-spans-on-exprs.rs:95 :74
126+ --> $DIR/blame-trait-error-spans-on-exprs.rs:97 :74
127127 |
128128LL | want(Wrapper { value: GenericBurrito { spiciness: NotSpicy, filling: q } });
129129 | ---- required by a bound introduced by this call ^ the trait `T3` is not implemented for `Q`
@@ -153,7 +153,7 @@ LL | fn example<Q: T3>(q: Q) {
153153 | ++++
154154
155155error[E0277]: the trait bound `Q: T2` is not satisfied
156- --> $DIR/blame-trait-error-spans-on-exprs.rs:99 :14
156+ --> $DIR/blame-trait-error-spans-on-exprs.rs:101 :14
157157 |
158158LL | want((3, q));
159159 | ---- ^ the trait `T2` is not implemented for `Q`
@@ -178,7 +178,7 @@ LL | fn example<Q: T2>(q: Q) {
178178 | ++++
179179
180180error[E0277]: the trait bound `Q: T3` is not satisfied
181- --> $DIR/blame-trait-error-spans-on-exprs.rs:103 :31
181+ --> $DIR/blame-trait-error-spans-on-exprs.rs:105 :31
182182 |
183183LL | want(Wrapper { value: (3, q) });
184184 | ---- ^ the trait `T3` is not implemented for `Q`
@@ -210,7 +210,7 @@ LL | fn example<Q: T3>(q: Q) {
210210 | ++++
211211
212212error[E0277]: the trait bound `Q: T3` is not satisfied
213- --> $DIR/blame-trait-error-spans-on-exprs.rs:107 :15
213+ --> $DIR/blame-trait-error-spans-on-exprs.rs:109 :15
214214 |
215215LL | want(((3, q), 5));
216216 | ---- ^ the trait `T3` is not implemented for `Q`
@@ -242,7 +242,7 @@ LL | fn example<Q: T3>(q: Q) {
242242 | ++++
243243
244244error[E0277]: the trait bound `Q: T1` is not satisfied
245- --> $DIR/blame-trait-error-spans-on-exprs.rs:110 :49
245+ --> $DIR/blame-trait-error-spans-on-exprs.rs:112 :49
246246 |
247247LL | want(DoubleWrapper { item: Wrapper { value: q } });
248248 | ---- ^ the trait `T1` is not implemented for `Q`
@@ -267,7 +267,7 @@ LL | fn example<Q: T1>(q: Q) {
267267 | ++++
268268
269269error[E0277]: the trait bound `Q: T1` is not satisfied
270- --> $DIR/blame-trait-error-spans-on-exprs.rs:113 :88
270+ --> $DIR/blame-trait-error-spans-on-exprs.rs:115 :88
271271 |
272272LL | want(DoubleWrapper { item: Wrapper { value: DoubleWrapper { item: Wrapper { value: q } } } });
273273 | ---- required by a bound introduced by this call ^ the trait `T1` is not implemented for `Q`
@@ -292,7 +292,7 @@ LL | fn example<Q: T1>(q: Q) {
292292 | ++++
293293
294294error[E0277]: the trait bound `Q: T3` is not satisfied
295- --> $DIR/blame-trait-error-spans-on-exprs.rs:117 :27
295+ --> $DIR/blame-trait-error-spans-on-exprs.rs:119 :27
296296 |
297297LL | want(Wrapper { value: AliasBurrito { spiciness: q, filling: q } });
298298 | ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `T3` is not implemented for `Q`
@@ -324,7 +324,7 @@ LL | fn example<Q: T3>(q: Q) {
324324 | ++++
325325
326326error[E0277]: the trait bound `Q: T1` is not satisfied
327- --> $DIR/blame-trait-error-spans-on-exprs.rs:120 :35
327+ --> $DIR/blame-trait-error-spans-on-exprs.rs:122 :35
328328 |
329329LL | want(Two { a: Two { a: (), b: q }, b: () });
330330 | ---- ^ the trait `T1` is not implemented for `Q`
@@ -349,7 +349,7 @@ LL | fn example<Q: T1>(q: Q) {
349349 | ++++
350350
351351error[E0277]: the trait bound `Q: T1` is not satisfied
352- --> $DIR/blame-trait-error-spans-on-exprs.rs:126 :59
352+ --> $DIR/blame-trait-error-spans-on-exprs.rs:128 :59
353353 |
354354LL | want(
355355 | ---- required by a bound introduced by this call
@@ -375,6 +375,38 @@ help: consider restricting type parameter `Q`
375375LL | fn example<Q: T1>(q: Q) {
376376 | ++++
377377
378- error: aborting due to 13 previous errors
378+ error[E0277]: the trait bound `Q: T3` is not satisfied
379+ --> $DIR/blame-trait-error-spans-on-exprs.rs:133:44
380+ |
381+ LL | want(&Burrito { spicy: false, filling: q });
382+ | ---- ^ the trait `T3` is not implemented for `Q`
383+ | |
384+ | required by a bound introduced by this call
385+ |
386+ note: required for `Burrito<Q>` to implement `T2`
387+ --> $DIR/blame-trait-error-spans-on-exprs.rs:22:13
388+ |
389+ LL | impl<A: T3> T2 for Burrito<A> {}
390+ | -- ^^ ^^^^^^^^^^
391+ | |
392+ | unsatisfied trait bound introduced here
393+ note: required for `&Burrito<Q>` to implement `T1`
394+ --> $DIR/blame-trait-error-spans-on-exprs.rs:74:17
395+ |
396+ LL | impl<'a, T: T2> T1 for &'a T {}
397+ | -- ^^ ^^^^^
398+ | |
399+ | unsatisfied trait bound introduced here
400+ note: required by a bound in `want`
401+ --> $DIR/blame-trait-error-spans-on-exprs.rs:53:12
402+ |
403+ LL | fn want<V: T1>(_x: V) {}
404+ | ^^ required by this bound in `want`
405+ help: consider restricting type parameter `Q`
406+ |
407+ LL | fn example<Q: T3>(q: Q) {
408+ | ++++
409+
410+ error: aborting due to 14 previous errors
379411
380412For more information about this error, try `rustc --explain E0277`.
0 commit comments