@@ -176,7 +176,7 @@ item-level API, but has been deemed worth it for the following reasons:
176176 declare ` Send ` /` Sync ` -ability, and not extending this problem to abstract
177177 return types is desireable. In practice, most uses
178178 of this feature would have to add explicit bounds for OIBITS
179- if they want to be maximally usable.
179+ if they wanted to be maximally usable.
180180- Low real change, since the situation already somewhat exists on structs with private fields:
181181 - In both cases, a change to the private implementation might change whether a OIBIT is
182182 implemented or not.
@@ -374,4 +374,12 @@ types private to a function body, for example a iterator adapter containing a cl
374374
375375> What parts of the design are still TBD ?
376376
377- None for the core feature proposed here , but many for possible extensions as elaborated on in detailed design .
377+ - What happens if you specialize a function with an abstract return type ,
378+ and differ in whether the return type implements an OIBIT or not ?
379+ - It would mean that specialization choice
380+ has to flow back into typechecking .
381+ - It seems sound , but would mean that different input type combinations
382+ of such a function could cause different OIBIT behavior independent
383+ of the input type parameters themself .
384+ - Which would not necessarily be an issue , since the actual type could not
385+ be observed from the outside anyway .
0 commit comments