foad added a comment.

In D71213#1780088 <https://reviews.llvm.org/D71213#1780088>, @gchatelet wrote:

> In D71213#1779841 <https://reviews.llvm.org/D71213#1779841>, @foad wrote:
>
> > @gchatelet in general would it be possible to make changes like this in a 
> > backwards-compatible way, or in two stages without a "flag day" change? We 
> > have out-of-tree users of CreateMemSet and it's awkward to change them all 
> > at exactly the same time as we merge in this change from upstream llvm, and 
> > we have had the same problem with other MaybeAlign changes recently. I 
> > realise that LLVM doesn't make any official promises about API stability.
>
>
> Thx for letting me know @foad . I'll make sure to keep the old API with a 
> deprecation message from now on.
>  Do you have any other suggestions on how to make this less painful for 
> out-of-tree users? I'm afraid that the cleanup phase (removal of deprecated 
> function) will be disruptive as well.


Removing deprecated functions is generally OK, as long as it happens *after* 
the preferred function is introduced, so we have time to switch over.

In the specific case of functions taking `Align` instead of `unsigned`, perhaps 
you could start off allowing implicit conversion from `unsigned` to `Align` and 
then remove it later, when all callers have been updated? Or perhaps it's too 
late for that now.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D71213/new/

https://reviews.llvm.org/D71213



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to