diff mbox

Turn some compile-time tests into run-time tests

Message ID CA+C-WL_g396Ti_k4mcyTxpeUdGVtqqc6b8eSenkBhjHgZASrgw@mail.gmail.com
State New
Headers show

Commit Message

Patrick Palka March 11, 2016, 4:38 p.m. UTC
On Thu, Mar 10, 2016 at 6:38 PM, Patrick Palka <patrick@parcs.ath.cx> wrote:
> I ran the command
>
>   git grep -l "dg-do compile" | xargs grep -l __builtin_abort | xargs grep -lw main
>
> to find tests marked as compile-time tests that likely ought to instead
> be marked as run-time tests, by the rationale that they use
> __builtin_abort and they also define main().  (I also then confirmed that they
> compile, link and run cleanly on my machine.)
>
> After this patch, the remaining test files reported by the above command
> are:
>
>   These do not define all the functions they use:
>     gcc/testsuite/g++.dg/ipa/devirt-41.C
>     gcc/testsuite/g++.dg/ipa/devirt-44.C
>     gcc/testsuite/g++.dg/ipa/devirt-45.C
>     gcc/testsuite/gcc.target/i386/pr55672.c
>
>   These are non-x86 tests so I can't confirm that they run cleanly:
>     gcc/testsuite/gcc.target/arm/pr58041.c
>     gcc/testsuite/gcc.target/powerpc/pr35907.c
>     gcc/testsuite/gcc.target/s390/dwarfregtable-1.c
>     gcc/testsuite/gcc.target/s390/dwarfregtable-2.c
>     gcc/testsuite/gcc.target/s390/dwarfregtable-3.c
>
>   These use dg-error:
>     libstdc++-v3/testsuite/20_util/forward/c_neg.cc
>     libstdc++-v3/testsuite/20_util/forward/f_neg.cc
>
> Bootstrapped and regtested on x86_64-pc-linux-gnu, does this look OK to
> commit?  Does anyone have another heuristic one can use to help find
> these kinds of typos?
>
> gcc/testsuite/ChangeLog:
>
>         * g++.dg/cpp0x/constexpr-aggr2.C: Make it a run-time test.
>         * g++.dg/cpp0x/nullptr32.C: Likewise.
>         * g++.dg/cpp1y/digit-sep-cxx11-neg.C: Likewise.
>         * g++.dg/cpp1y/digit-sep.C: Likewise.
>         * g++.dg/ext/flexary13.C: Likewise.
>         * gcc.dg/alias-14.c: Likewise.
>         * gcc.dg/ipa/PR65282.c: Likewise.
>         * gcc.dg/pr69644.c: Likewise.
>         * gcc.dg/tree-ssa/pr38533.c: Likewise.
>         * gcc.dg/tree-ssa/pr61385.c: Likewise.

Here's another I found:

Comments

Jeff Law April 27, 2016, 9:26 p.m. UTC | #1
On 03/11/2016 09:38 AM, Patrick Palka wrote:
> On Thu, Mar 10, 2016 at 6:38 PM, Patrick Palka <patrick@parcs.ath.cx> wrote:
>> I ran the command
>>
>>   git grep -l "dg-do compile" | xargs grep -l __builtin_abort | xargs grep -lw main
>>
>> to find tests marked as compile-time tests that likely ought to instead
>> be marked as run-time tests, by the rationale that they use
>> __builtin_abort and they also define main().  (I also then confirmed that they
>> compile, link and run cleanly on my machine.)
>>
>> After this patch, the remaining test files reported by the above command
>> are:
>>
>>   These do not define all the functions they use:
>>     gcc/testsuite/g++.dg/ipa/devirt-41.C
>>     gcc/testsuite/g++.dg/ipa/devirt-44.C
>>     gcc/testsuite/g++.dg/ipa/devirt-45.C
>>     gcc/testsuite/gcc.target/i386/pr55672.c
>>
>>   These are non-x86 tests so I can't confirm that they run cleanly:
>>     gcc/testsuite/gcc.target/arm/pr58041.c
>>     gcc/testsuite/gcc.target/powerpc/pr35907.c
>>     gcc/testsuite/gcc.target/s390/dwarfregtable-1.c
>>     gcc/testsuite/gcc.target/s390/dwarfregtable-2.c
>>     gcc/testsuite/gcc.target/s390/dwarfregtable-3.c
>>
>>   These use dg-error:
>>     libstdc++-v3/testsuite/20_util/forward/c_neg.cc
>>     libstdc++-v3/testsuite/20_util/forward/f_neg.cc
>>
>> Bootstrapped and regtested on x86_64-pc-linux-gnu, does this look OK to
>> commit?  Does anyone have another heuristic one can use to help find
>> these kinds of typos?
>>
>> gcc/testsuite/ChangeLog:
>>
>>         * g++.dg/cpp0x/constexpr-aggr2.C: Make it a run-time test.
>>         * g++.dg/cpp0x/nullptr32.C: Likewise.
>>         * g++.dg/cpp1y/digit-sep-cxx11-neg.C: Likewise.
>>         * g++.dg/cpp1y/digit-sep.C: Likewise.
>>         * g++.dg/ext/flexary13.C: Likewise.
>>         * gcc.dg/alias-14.c: Likewise.
>>         * gcc.dg/ipa/PR65282.c: Likewise.
>>         * gcc.dg/pr69644.c: Likewise.
>>         * gcc.dg/tree-ssa/pr38533.c: Likewise.
>>         * gcc.dg/tree-ssa/pr61385.c: Likewise.
>
> Here's another I found:
>
> diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-return1.C
> b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-return1.C
> index 4b353b6..ea7ae6f 100644
> --- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-return1.C
> +++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-return1.C
THe lambda-return1.C change is fine with an appropriate ChangeLog.  I'll 
be looking at the others momentarily.

jeff
diff mbox

Patch

diff --git a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-return1.C
b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-return1.C
index 4b353b6..ea7ae6f 100644
--- a/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-return1.C
+++ b/gcc/testsuite/g++.dg/cpp0x/lambda/lambda-return1.C
@@ -1,5 +1,5 @@ 
 // PR c++/57437
-// { dg-require-effective-target c++11 }
+// { dg-do run { target c++11 } }

 struct A {
   int i;