[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
This revision was automatically updated to reflect the committed changes. Closed by commit rL294997: [test] Make Lit tests C++11 Compatible - Objective-C++ (authored by lcharles). Changed prior to commit: https://reviews.llvm.org/D29739?vs=87735=88267#toc Repository: rL LLVM https://reviews.llvm.org/D29739 Files: cfe/trunk/test/CodeGenObjCXX/arc-blocks.mm cfe/trunk/test/CodeGenObjCXX/encode.mm cfe/trunk/test/CodeGenObjCXX/literals.mm cfe/trunk/test/SemaObjCXX/arc-system-header.mm cfe/trunk/test/SemaObjCXX/ivar-construct.mm Index: cfe/trunk/test/SemaObjCXX/arc-system-header.mm === --- cfe/trunk/test/SemaObjCXX/arc-system-header.mm +++ cfe/trunk/test/SemaObjCXX/arc-system-header.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fobjc-arc -isystem %S/Inputs %s -verify +// RUN: %clang_cc1 -std=gnu++98 -fobjc-arc -isystem %S/Inputs %s -verify #include Index: cfe/trunk/test/SemaObjCXX/ivar-construct.mm === --- cfe/trunk/test/SemaObjCXX/ivar-construct.mm +++ cfe/trunk/test/SemaObjCXX/ivar-construct.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s +// RUN: %clang_cc1 -std=gnu++98 -fsyntax-only -verify -Wno-objc-root-class %s struct Y { Y(); Index: cfe/trunk/test/CodeGenObjCXX/literals.mm === --- cfe/trunk/test/CodeGenObjCXX/literals.mm +++ cfe/trunk/test/CodeGenObjCXX/literals.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -I %S/Inputs -triple x86_64-apple-darwin10 -emit-llvm -fblocks -fobjc-arc -fobjc-runtime-has-weak -fexceptions -fobjc-exceptions -fcxx-exceptions -fobjc-arc-exceptions -O2 -disable-llvm-passes -o - %s | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 -I %S/Inputs -triple x86_64-apple-darwin10 -emit-llvm -fblocks -fobjc-arc -fobjc-runtime-has-weak -fexceptions -fobjc-exceptions -fcxx-exceptions -fobjc-arc-exceptions -O2 -disable-llvm-passes -o - %s | FileCheck %s #include "literal-support.h" Index: cfe/trunk/test/CodeGenObjCXX/arc-blocks.mm === --- cfe/trunk/test/CodeGenObjCXX/arc-blocks.mm +++ cfe/trunk/test/CodeGenObjCXX/arc-blocks.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -fobjc-runtime-has-weak -fblocks -fobjc-arc -o - %s | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 -triple x86_64-apple-darwin10 -emit-llvm -fobjc-runtime-has-weak -fblocks -fobjc-arc -o - %s | FileCheck %s // CHECK: [[A:.*]] = type { i64, [10 x i8*] } Index: cfe/trunk/test/CodeGenObjCXX/encode.mm === --- cfe/trunk/test/CodeGenObjCXX/encode.mm +++ cfe/trunk/test/CodeGenObjCXX/encode.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 %s -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 %s -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s // CHECK: v17@0:8{vector=}16 // CHECK: {vector =} Index: cfe/trunk/test/SemaObjCXX/arc-system-header.mm === --- cfe/trunk/test/SemaObjCXX/arc-system-header.mm +++ cfe/trunk/test/SemaObjCXX/arc-system-header.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fobjc-arc -isystem %S/Inputs %s -verify +// RUN: %clang_cc1 -std=gnu++98 -fobjc-arc -isystem %S/Inputs %s -verify #include Index: cfe/trunk/test/SemaObjCXX/ivar-construct.mm === --- cfe/trunk/test/SemaObjCXX/ivar-construct.mm +++ cfe/trunk/test/SemaObjCXX/ivar-construct.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s +// RUN: %clang_cc1 -std=gnu++98 -fsyntax-only -verify -Wno-objc-root-class %s struct Y { Y(); Index: cfe/trunk/test/CodeGenObjCXX/literals.mm === --- cfe/trunk/test/CodeGenObjCXX/literals.mm +++ cfe/trunk/test/CodeGenObjCXX/literals.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -I %S/Inputs -triple x86_64-apple-darwin10 -emit-llvm -fblocks -fobjc-arc -fobjc-runtime-has-weak -fexceptions -fobjc-exceptions -fcxx-exceptions -fobjc-arc-exceptions -O2 -disable-llvm-passes -o - %s | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 -I %S/Inputs -triple x86_64-apple-darwin10 -emit-llvm -fblocks -fobjc-arc -fobjc-runtime-has-weak -fexceptions -fobjc-exceptions -fcxx-exceptions -fobjc-arc-exceptions -O2 -disable-llvm-passes -o - %s | FileCheck %s #include "literal-support.h" Index: cfe/trunk/test/CodeGenObjCXX/arc-blocks.mm === --- cfe/trunk/test/CodeGenObjCXX/arc-blocks.mm +++ cfe/trunk/test/CodeGenObjCXX/arc-blocks.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -fobjc-runtime-has-weak -fblocks -fobjc-arc
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
rjmccall accepted this revision. rjmccall added a comment. This revision is now accepted and ready to land. LGTM. https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
tigerleapgorge reclaimed this revision. tigerleapgorge added a comment. @rjmccall - Hi John, I have reopened this patch. https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
rjmccall added a comment. In https://reviews.llvm.org/D29739#675277, @probinson wrote: > In https://reviews.llvm.org/D29739#674297, @rjmccall wrote: > > > In https://reviews.llvm.org/D29739#674288, @probinson wrote: > > > > > I really think Apple would need to step up here if the default > > > Objective-C++ dialect is going to change. > > > > > > I don't mind stepping up and doing this work. I just thought you'd already > > done it. This patch updates some tests; is that enough, or are there > > further changes required in order to change the default ObjC++ dialect? > > > > John. > > > Charles tells me this is the last group of Objective-C++ tests that failed, > so maybe there isn't anything else to do after all. I had thought there were > more. He'll go ahead with this set. > We have another couple dozen C++ tests to straighten out, then we'll be > ready to have the dev-list discussion about upgrading the default for 5.0, > and whether it's the narrow case (just C++ and just for PS4, which was our > original plan) or the big bang (both languages and for everybody). Okay, thanks, sounds good. https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
probinson added a comment. In https://reviews.llvm.org/D29739#674297, @rjmccall wrote: > In https://reviews.llvm.org/D29739#674288, @probinson wrote: > > > I really think Apple would need to step up here if the default > > Objective-C++ dialect is going to change. > > > I don't mind stepping up and doing this work. I just thought you'd already > done it. This patch updates some tests; is that enough, or are there further > changes required in order to change the default ObjC++ dialect? > > John. Charles tells me this is the last group of Objective-C++ tests that failed, so maybe there isn't anything else to do after all. I had thought there were more. He'll go ahead with this set. We have another couple dozen C++ tests to straighten out, then we'll be ready to have the dev-list discussion about upgrading the default for 5.0, and whether it's the narrow case (just C++ and just for PS4, which was our original plan) or the big bang (both languages and for everybody). https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
rjmccall added a comment. In https://reviews.llvm.org/D29739#674288, @probinson wrote: > 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 understand. That's part of why I do code review, because sometimes I can answer questions for other people. :) Forcing 98 on these tests is fine. > I really think Apple would need to step up here if the default Objective-C++ > dialect is going to change. I don't mind stepping up and doing this work. I just thought you'd already done it. This patch updates some tests; is that enough, or are there further changes required in order to change the default ObjC++ dialect? John. https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
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 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
rjmccall added a comment. 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. 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. https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
tigerleapgorge added a comment. 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++. Cheers Charles Li https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
rjmccall added a comment. Hmm. Was there discussion about that? I see no reason not to bump ObjC++. https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
tigerleapgorge abandoned this revision. tigerleapgorge added a comment. These tests were failing because I accidentally changed the Objective-C++. Abandoning this patch. https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
probinson added a comment. These are all Objective-C++ tests, and AFAIK we don't intend to change the default Objective-C++ dialect when we finally do change the default C++ dialect. So I think these tests do not need to be modified. https://reviews.llvm.org/D29739 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
[PATCH] D29739: Make Lit tests C++11 compatible - Objective-C++
tigerleapgorge created this revision. I am continuing to make our Lit tests C++11 compatible. This patch defaults five Objective-C++ tests to run under -std=gnu++98 This patch is essentially a continuation of Bug 24344 https://llvm.org/bugs/show_bug.cgi?id=24344 Fix r289167 resolved all tests inside the Rewriter directory, This patch resolves the remaining tests outside the Rewriter directory. https://reviews.llvm.org/D29739 Files: test/CodeGenObjCXX/arc-blocks.mm test/CodeGenObjCXX/encode.mm test/CodeGenObjCXX/literals.mm test/SemaObjCXX/arc-system-header.mm test/SemaObjCXX/ivar-construct.mm Index: test/SemaObjCXX/ivar-construct.mm === --- test/SemaObjCXX/ivar-construct.mm +++ test/SemaObjCXX/ivar-construct.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s +// RUN: %clang_cc1 -std=gnu++98 -fsyntax-only -verify -Wno-objc-root-class %s struct Y { Y(); Index: test/SemaObjCXX/arc-system-header.mm === --- test/SemaObjCXX/arc-system-header.mm +++ test/SemaObjCXX/arc-system-header.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fobjc-arc -isystem %S/Inputs %s -verify +// RUN: %clang_cc1 -std=gnu++98 -fobjc-arc -isystem %S/Inputs %s -verify #include Index: test/CodeGenObjCXX/literals.mm === --- test/CodeGenObjCXX/literals.mm +++ test/CodeGenObjCXX/literals.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -I %S/Inputs -triple x86_64-apple-darwin10 -emit-llvm -fblocks -fobjc-arc -fobjc-runtime-has-weak -fexceptions -fobjc-exceptions -fcxx-exceptions -fobjc-arc-exceptions -O2 -disable-llvm-passes -o - %s | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 -I %S/Inputs -triple x86_64-apple-darwin10 -emit-llvm -fblocks -fobjc-arc -fobjc-runtime-has-weak -fexceptions -fobjc-exceptions -fcxx-exceptions -fobjc-arc-exceptions -O2 -disable-llvm-passes -o - %s | FileCheck %s #include "literal-support.h" Index: test/CodeGenObjCXX/encode.mm === --- test/CodeGenObjCXX/encode.mm +++ test/CodeGenObjCXX/encode.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 %s -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 %s -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s // CHECK: v17@0:8{vector=}16 // CHECK: {vector =} Index: test/CodeGenObjCXX/arc-blocks.mm === --- test/CodeGenObjCXX/arc-blocks.mm +++ test/CodeGenObjCXX/arc-blocks.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -emit-llvm -fobjc-runtime-has-weak -fblocks -fobjc-arc -o - %s | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 -triple x86_64-apple-darwin10 -emit-llvm -fobjc-runtime-has-weak -fblocks -fobjc-arc -o - %s | FileCheck %s // CHECK: [[A:.*]] = type { i64, [10 x i8*] } Index: test/SemaObjCXX/ivar-construct.mm === --- test/SemaObjCXX/ivar-construct.mm +++ test/SemaObjCXX/ivar-construct.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s +// RUN: %clang_cc1 -std=gnu++98 -fsyntax-only -verify -Wno-objc-root-class %s struct Y { Y(); Index: test/SemaObjCXX/arc-system-header.mm === --- test/SemaObjCXX/arc-system-header.mm +++ test/SemaObjCXX/arc-system-header.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fobjc-arc -isystem %S/Inputs %s -verify +// RUN: %clang_cc1 -std=gnu++98 -fobjc-arc -isystem %S/Inputs %s -verify #include Index: test/CodeGenObjCXX/literals.mm === --- test/CodeGenObjCXX/literals.mm +++ test/CodeGenObjCXX/literals.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -I %S/Inputs -triple x86_64-apple-darwin10 -emit-llvm -fblocks -fobjc-arc -fobjc-runtime-has-weak -fexceptions -fobjc-exceptions -fcxx-exceptions -fobjc-arc-exceptions -O2 -disable-llvm-passes -o - %s | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 -I %S/Inputs -triple x86_64-apple-darwin10 -emit-llvm -fblocks -fobjc-arc -fobjc-runtime-has-weak -fexceptions -fobjc-exceptions -fcxx-exceptions -fobjc-arc-exceptions -O2 -disable-llvm-passes -o - %s | FileCheck %s #include "literal-support.h" Index: test/CodeGenObjCXX/encode.mm === --- test/CodeGenObjCXX/encode.mm +++ test/CodeGenObjCXX/encode.mm @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 %s -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s +// RUN: %clang_cc1 -std=gnu++98 %s -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s // CHECK: v17@0:8{vector =}16 // CHECK: {vector =} Index: test/CodeGenObjCXX/arc-blocks.mm