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
// - The first `.` is on a NameRef of type FacetType for `I where .X = .Self`.
96
+
// - This finds `G` through the FacetType.
97
+
// - The second `.` is on a Call of type FacetAccessType into `BindSymbolicName` with type FacetType for `I`.
98
+
// - This finds `G` through the FacetType (impl lookup strips off FacetAccessType).
99
+
// - The second `.` is on a Call of type FacetAccessType into `ImplWitnessAccess` of `I.X` into `LookupImplWitness`, which has type `type`
100
+
// - Can't make calls on an `ImplWitnessAccess`.
101
+
//
102
+
// CHECK:STDERR: fail_todo_access_through_call.carbon:[[@LINE+4]]:3: error: type `.(I.X)` does not support qualified expressions [QualifiedExprUnsupported]
// TODO: The return type of G() is a FacetAccessType of a BindSymbolicName. We
119
+
// try to convert a Call of type FacetAccessType (of type `type`) to `type`
120
+
// which fails.
121
+
//
122
+
// CHECK:STDERR: fail_todo_access_through_call_converts_is_a_type.carbon:[[@LINE+7]]:3: error: cannot convert non-type value of type `.Self` to `type` with `as` [ConversionFailureNonTypeToFacet]
123
+
// CHECK:STDERR: U.G() as type;
124
+
// CHECK:STDERR: ^~~~~~~~~~~~~
125
+
// CHECK:STDERR: fail_todo_access_through_call_converts_is_a_type.carbon:[[@LINE+4]]:3: note: type `.Self` does not implement interface `Core.As(type)` [MissingImplInMemberAccessNote]
0 commit comments