bcraig added a comment.
In http://reviews.llvm.org/D17146#350382, @mclow.lists wrote:
> > I'm open to recommendations on ways to test this that are better than
> > "Submit, watch build bots, revert as necessary".
>
>
> My suggestion is to do this incrementally.
> Implement the infrastructure bits, then move (say) Linux over to use the new
> bits.
> Then (say) Mac OS X. Then FreeBSD. Then IBM. Then Windows.
> Repeat until everyone's moved over; watching the testbots (and getting the
> people who committed support for each of these systems involved).
> Then, when they're all moved, delete the old stuff.
I can see some places where I can improve the reviewability of the code by
doing things incrementally. Basically, I can shuffle code around in a few
batches of changes first without substantially modifying the code in a few sets
of changes. Then I can do the big _CXX_ transformation after that. I will see
about opening different reviews for those smaller renames / shuffles, and link
back to this review as justification.
I am hesitant to take the approach that you've described (port one platform at
a time). I think that would make locale.cpp and <locale> have lots of code
that looks like the following...
#if _USE_THE_NEW_STUFF
return _CXX_btowc_l(c, __l);
#elif _LIBCPP_LOCALE__L_EXTENSIONS
return btowc_l(c, __l);
#else
return __btowc_l(c, __l);
#endif
With this approach, I'd still be doing a lot of blind submissions, and in the
short term, the code would get worse. If, for whatever reason, I'm unable to
complete the port and delete all the old stuff, then the refactor turns into a
net negative.
http://reviews.llvm.org/D17146
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits