[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++

Paul Robinson via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Feb 10 22:20:00 PST 2017


probinson added a comment.

In https://reviews.llvm.org/D29739#673971, @rjmccall wrote:

> In https://reviews.llvm.org/D29739#673933, @tigerleapgorge wrote:
>
> > Hi John,
> >
> > Here is the most recent discussion I can find on cfe-dev.
> >  “I'm guessing that Objective-C/C++ is kind of passe, so nobody is really interested in modernizing it”
> >  http://lists.llvm.org/pipermail/cfe-dev/2016-December/051844.html
> >
> > As far as I am aware, there appears to be no strong reason to bump or not to bump ObjC++.
>
>
> It certainly simplifies the message to say that we've changed the default C++ dialect to C++11 across the board.  That should apply to ObjC++ as well.  I would not describe ObjC++ as passé; it's a very important language for Apple developers.


Nice to know, although nobody piped up on the earlier cited discussion.

Sony is invested in making the lit tests C++11 clean so that we can upstream a change to make it the default C++ dialect for PS4.  That will ensure that any new C++ tests are C++11 clean.  This is one step in the direction of making C++11 (or even something newer) the default dialect for everybody.
However we are not an Objective-C++ vendor.  We are neutral about changing the default dialect there; if you want to change the default dialect for Objective-C++, that's fine with us, but I don't think we can invest in learning enough about Objective-C++ to do the right thing with the existing Objective-C++ tests.  In particular I don't know whether forcing 98 on these tests is the "right" solution; all we know is that it made the tests pass, which is not particularly surprising.  I really think Apple would need to step up here if the default Objective-C++ dialect is going to change.

> It is likely that the Rewriter generates C++98-only code.  I believe the Rewriter is no longer being actively maintained; I'm not sure we're ready to propose removing it yet, but if there are specific problems with those tests, I think it makes some sense to just pass -std=gnu++98 for them.
> 
> John.

I am pretty sure we already modified the Rewriter tests to explicitly compile the rewritten C++ as -98 code.  It's just the straight Objective-C++ tests where Charles has stepped back.

--paulr


https://reviews.llvm.org/D29739





More information about the cfe-commits mailing list