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
// CHECK:STDERR: fail_todo_period_self_impl_lookup.carbon:[[@LINE+4]]:25: error: cannot convert type `.Self` that implements `Z` into type implementing `Y` [ConversionFailureFacetToFacet]
358
362
// CHECK:STDERR: impl C as Z where .Z1 = .Self {}
359
363
// CHECK:STDERR: ^~~~~
@@ -372,6 +376,9 @@ class C;
372
376
impl C asY {}
373
377
impl C asZ where .Z1= C {}
374
378
379
+
// Implied constraint: .Self impls Y. Should be verified against the type of the
380
+
// facet value replacing T when calling F.
381
+
//
375
382
// CHECK:STDERR: fail_todo_period_self_compared_with_concrete_self.carbon:[[@LINE+4]]:24: error: cannot convert type `.Self` that implements `Z` into type implementing `Y` [ConversionFailureFacetToFacet]
376
383
// CHECK:STDERR: fn F(T:! Z where .Z1 = .Self) {}
377
384
// CHECK:STDERR: ^~~~~
@@ -380,6 +387,9 @@ fn F(T:! Z where .Z1 = .Self) {}
380
387
fnG() {
381
388
F(C);
382
389
390
+
// Implied constraint: .Self impls Y. Should be verified against the type of
391
+
// the facet value of C when casting.
392
+
//
383
393
// CHECK:STDERR: fail_todo_period_self_compared_with_concrete_self.carbon:[[@LINE+4]]:23: error: cannot convert type `.Self` that implements `Z` into type implementing `Y` [ConversionFailureFacetToFacet]
0 commit comments