Patchwork testsuite: missing or wrong dg-* directives?

login
register
mail settings
Submitter Harald Anlauf
Date Jan. 14, 2013, 10:16 p.m.
Message ID <50F483AF.6060705@gmx.de>
Download mbox | patch
Permalink /patch/211935/
State New
Headers show

Comments

Harald Anlauf - Jan. 14, 2013, 10:16 p.m.
On 01/14/13 00:10, Manfred Schwarb wrote:
> Am 13.01.2013 21:30, schrieb Harald Anlauf:
>> On 01/12/13 22:02, Mikael Morin wrote:
>>> Le 08/01/2013 22:32, Harald Anlauf a écrit :
>>>> On 12/28/12 21:49, Harald Anlauf wrote:
>>>>> Hello all,
>>>>>
>>>>> is there a default directive that is assumed when the testsuite is
>>>>> run?
>>>>>
>>>>> Running an "fgrep -L" on the fortran testsuite, I found several files
>>>>> that are missing either dg-do compile or run.
>>>>>
>>>>> I also found a funny typo in gomp/appendix-a/a.11.2.f90
>>>>> ! { do-do compile }
>>>>
>
> There are several other oddities: d_g-final, braces have to be separated
> by spaces.

Looking at the generated dump, tt appears that the occurence of
"d_g-final" is just some left-over junk and can be removed safely,
see below.  Maybe the author (Tobias B.) knows?

> Not sure about the double braces in lto, I guess they act simply as
> single braces.
>
> class_array_10.f03:! { dg-do compile}
> coarray_lib_token_4.f90:! { d_g-final { scan-tree-dump-times "bar
> \\(&parm.\[0-9\]+, caf_token.\[0-9\]+, \\(\\(integer\\(kind=.\\)
> parm.\[0-9\]+.data - \\(integer\\(kind=.\\)\\) x.\[0-9\]+\\) \\+
> caf_offset.\[0-9\]+\\);" 1 "original" } }
> continuation_9.f90:! { dg-warning "not allowed by itself in line 3" ""
> {target "*-*-*"} 0 }
> continuation_9.f90:! { dg-warning "not allowed by itself in line 4" ""
> {target "*-*-*"} 0 }
> continuation_9.f90:! { dg-warning "not allowed by itself in line 5" ""
> {target "*-*-*"} 0 }
> extends_11.f03:! { dg-final { scan-tree-dump-times "
> +recruit\\.service\\.education\\.person\\.ss =" 8 "original"} }
> lto/20091016-1_0.f90:! { dg-lto-options {{-flto -g -fPIC -r -nostdlib}
> {-O -flto -g -fPIC -r -nostdlib}} }
> lto/20100110-1_0.f90:! { dg-lto-options {{ -O1 -flto }} }
> lto/pr41521_0.f90:! { dg-lto-options {{-g -flto} {-g -O -flto}} }
> lto/pr46036_0.f90:! { dg-lto-options {{ -O -flto -ftree-vectorize }} }
> lto/pr46629_0.f90:! { dg-lto-options {{ -O2 -flto -ftree-vectorize
> -march=x86-64 }} { target i?86-*-* x86_64-*-* } }
> lto/pr46629_0.f90:! { dg-lto-options {{ -O2 -flto -ftree-vectorize }} }
> lto/pr46911_0.f:! { dg-lto-options {{ -O2 -flto -g }} }
> lto/pr47839_0.f90:! { dg-lto-options {{ -g -flto }} }
> move_alloc_13.f90:! { dg-do run}
> structure_constructor_11.f90:! { dg-do run}
> tab_continuation.f:! { dg-warning "Nonconforming tab character in column
> 1 of line 10" "Nonconforming tab" {target "*-*-*"} 0 }
> tab_continuation.f:! { dg-warning "Nonconforming tab character in column
> 1 of line 11" "Nonconforming tab" {target "*-*-*"} 0 }
> tab_continuation.f:! { dg-warning "Nonconforming tab character in column
> 1 of line 8" "Nonconforming tab" {target "*-*-*"} 0 }
> tab_continuation.f:! { dg-warning "Nonconforming tab character in column
> 1 of line 9" "Nonconforming tab" {target "*-*-*"} 0 }
> vect/vect-2.f90:! { dg-final { scan-tree-dump-times "Alignment of access
> forced using versioning." 3 "vect" {target { vect_no_align || { { !
> vector_alignment_reachable  } && { ! vect_hw_misalign } } } } } }
> vect/vect-3.f90:! { dg-final { scan-tree-dump-times "Alignment of access
> forced using peeling" 1 "vect" { xfail { vect_no_align || {!
> vector_alignment_reachable}} } } }
> vect/vect-3.f90:! { dg-final { scan-tree-dump-times "Alignment of access
> forced using versioning" 1 "vect" { target { {! vect_no_align} && { {!
> vector_alignment_reachable} && {! vect_hw_misalign} } } } } }
> vect/vect-3.f90:! { dg-final { scan-tree-dump-times "Vectorizing an
> unaligned access" 1 "vect" { xfail { { vect_no_align } || { !
> vector_alignment_reachable} } } } }
> vect/vect-3.f90:! { dg-final { scan-tree-dump-times "Vectorizing an
> unaligned access" 2 "vect" { target { {! vect_no_align} && { {!
> vector_alignment_reachable} && {! vect_hw_misalign} } } } } }
> vect/vect-4.f90:! { dg-final { scan-tree-dump-times "Alignment of access
> forced using peeling" 1 "vect" { xfail { { vect_no_align } || {!
> vector_alignment_reachable} } } } }
> vect/vect-4.f90:! { dg-final { scan-tree-dump-times "Vectorizing an
> unaligned access" 1 "vect" { xfail { { vect_no_align } || {!
> vector_alignment_reachable} } } } }
> vect/vect-4.f90:! { dg-final { scan-tree-dump-times "Vectorizing an
> unaligned access" 2 "vect" { target { {! vector_alignment_reachable} &&
> {! vect_hw_misalign} } } } }
> vect/vect-5.f90:! { dg-final { scan-tree-dump-times "Alignment of access
> forced using peeling" 1 "vect" { xfail { vect_no_align || {!
> vector_alignment_reachable} } } } }
> vect/vect-5.f90:! { dg-final { scan-tree-dump-times "Alignment of access
> forced using versioning." 1 "vect" { target { {!
> vector_alignment_reachable} && {! vect_hw_misalign} } } } }
> warning-directive-2.F90:! { dg-message "some warnings being treated as
> errors" "" {target "*-*-*"} 0 }
>
>
> cheers,
> Manfred
>

Attached there is a partial patch for the obvious parts, plus other
missed cases (missing options).  No failures, just a few more passes
from the fixed dg-do run's.

2013-01-14  Manfred Schwarb  <manfred99@gmx.ch>
	    Harald Anlauf  <anlauf@gmx.de>

	* gfortran.dg/bounds_check_4.f90: Add dg-options "-fbounds-check".
	* gfortran.dg/bounds_check_5.f90: Likewise.
	* gfortran.dg/class_array_10.f03: Fix syntax of dg-directive.
	* gfortran.dg/continuation_9.f90: Likewise.
	* gfortran.dg/move_alloc_13.f90: Likewise.
	* gfortran.dg/structure_constructor_11.f90: Likewise.
	* gfortran.dg/tab_continuation.f: Likewise.
	* gfortran.dg/warning-directive-2.F90: Likewise.
	* gfortran.dg/coarray_lib_token_4.f90: Remove misspelled directive.

Harald
Mikael Morin - Jan. 15, 2013, 9:21 p.m.
Le 14/01/2013 23:16, Harald Anlauf a écrit :
> Attached there is a partial patch for the obvious parts, plus other
> missed cases (missing options). No failures, just a few more passes
> from the fixed dg-do run's.
>
Thanks, applied as revision 195217.

Mikael
Manfred Schwarb - Jan. 15, 2013, 9:29 p.m.
>
> Attached there is a partial patch for the obvious parts, plus other
> missed cases (missing options).  No failures, just a few more passes
> from the fixed dg-do run's.
>
> 2013-01-14  Manfred Schwarb  <manfred99@gmx.ch>
>          Harald Anlauf  <anlauf@gmx.de>
>
>      * gfortran.dg/bounds_check_4.f90: Add dg-options "-fbounds-check".
>      * gfortran.dg/bounds_check_5.f90: Likewise.
>      * gfortran.dg/class_array_10.f03: Fix syntax of dg-directive.
>      * gfortran.dg/continuation_9.f90: Likewise.
>      * gfortran.dg/move_alloc_13.f90: Likewise.
>      * gfortran.dg/structure_constructor_11.f90: Likewise.
>      * gfortran.dg/tab_continuation.f: Likewise.
>      * gfortran.dg/warning-directive-2.F90: Likewise.
>      * gfortran.dg/coarray_lib_token_4.f90: Remove misspelled directive.
>

Harald,
thanks for doing this. I'm not able to sign the famous paperwork,
so submitting patches myself is not really productive.

Manfred


> Harald

Patch

Index: gcc/testsuite/gfortran.dg/tab_continuation.f
===================================================================
--- gcc/testsuite/gfortran.dg/tab_continuation.f	(revision 195171)
+++ gcc/testsuite/gfortran.dg/tab_continuation.f	(working copy)
@@ -9,7 +9,7 @@ 
 	INTEGER NAXIS(0:MAPMAX,LUMIN:LUMAX),NAXIS1(0:MAPMAX,LUMIN:LUMAX),
 	1NAXIS2(0:MAPMAX,LUMIN:LUMAX),NAXIS3(0:MAPMAX,LUMIN:LUMAX)
 	end
-! { dg-warning "Nonconforming tab character in column 1 of line 8" "Nonconforming tab" {target "*-*-*"} 0 }
-! { dg-warning "Nonconforming tab character in column 1 of line 9" "Nonconforming tab" {target "*-*-*"} 0 }
-! { dg-warning "Nonconforming tab character in column 1 of line 10" "Nonconforming tab" {target "*-*-*"} 0 }
-! { dg-warning "Nonconforming tab character in column 1 of line 11" "Nonconforming tab" {target "*-*-*"} 0 }
+! { dg-warning "Nonconforming tab character in column 1 of line 8" "Nonconforming tab" { target *-*-* } 0 }
+! { dg-warning "Nonconforming tab character in column 1 of line 9" "Nonconforming tab" { target *-*-* } 0 }
+! { dg-warning "Nonconforming tab character in column 1 of line 10" "Nonconforming tab" { target *-*-* } 0 }
+! { dg-warning "Nonconforming tab character in column 1 of line 11" "Nonconforming tab" { target *-*-* } 0 }
Index: gcc/testsuite/gfortran.dg/bounds_check_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/bounds_check_4.f90	(revision 195171)
+++ gcc/testsuite/gfortran.dg/bounds_check_4.f90	(working copy)
@@ -1,4 +1,5 @@ 
 ! { dg-do run }
+! { dg-options "-fbounds-check" }
 subroutine foo(n,x)
   implicit none
   integer, intent(in) :: n
Index: gcc/testsuite/gfortran.dg/class_array_10.f03
===================================================================
--- gcc/testsuite/gfortran.dg/class_array_10.f03	(revision 195171)
+++ gcc/testsuite/gfortran.dg/class_array_10.f03	(working copy)
@@ -1,4 +1,4 @@ 
-! { dg-do compile}
+! { dg-do compile }
 !
 ! PR fortran/41587
 ! This program was leading to an ICE related to class allocatable arrays
Index: gcc/testsuite/gfortran.dg/continuation_9.f90
===================================================================
--- gcc/testsuite/gfortran.dg/continuation_9.f90	(revision 195171)
+++ gcc/testsuite/gfortran.dg/continuation_9.f90	(working copy)
@@ -4,6 +4,6 @@ 
 &
  &
 end
-! { dg-warning "not allowed by itself in line 3" "" {target "*-*-*"} 0 }
-! { dg-warning "not allowed by itself in line 4" "" {target "*-*-*"} 0 }
-! { dg-warning "not allowed by itself in line 5" "" {target "*-*-*"} 0 }
+! { dg-warning "not allowed by itself in line 3" "" { target *-*-* } 0 }
+! { dg-warning "not allowed by itself in line 4" "" { target *-*-* } 0 }
+! { dg-warning "not allowed by itself in line 5" "" { target *-*-* } 0 }
Index: gcc/testsuite/gfortran.dg/coarray_lib_token_4.f90
===================================================================
--- gcc/testsuite/gfortran.dg/coarray_lib_token_4.f90	(revision 195171)
+++ gcc/testsuite/gfortran.dg/coarray_lib_token_4.f90	(working copy)
@@ -40,7 +40,6 @@ 
 ! { dg-final { scan-tree-dump-times "foo \\(struct array2_integer\\(kind=4\\) & restrict x, struct array2_integer\\(kind=4\\) & restrict y, integer\\(kind=4\\) & restrict test, void . restrict caf_token.\[0-9\]+, integer\\(kind=.\\) caf_offset.\[0-9\]+, void . restrict caf_token.\[0-9\]+, integer\\(kind=.\\) caf_offset.\[0-9\]+\\)" 1 "original" } }
 !
 ! { dg-final { scan-tree-dump-times "bar \\(&parm.\[0-9\]+, caf_token.\[0-9\]+, \\(\\(integer\\(kind=.\\)\\) parm.\[0-9\]+.data - \\(integer\\(kind=.\\)\\) x.\[0-9\]+\\) \\+ caf_offset.\[0-9\]+\\);" 1 "original" } }
-! { d_g-final { scan-tree-dump-times "bar \\(&parm.\[0-9\]+, caf_token.\[0-9\]+, \\(\\(integer\\(kind=.\\) parm.\[0-9\]+.data - \\(integer\\(kind=.\\)\\) x.\[0-9\]+\\) \\+ caf_offset.\[0-9\]+\\);" 1 "original" } }
 !
 ! { dg-final { scan-tree-dump-times "expl \\(\\(integer\\(kind=4\\).0:. .\\) parm.\[0-9\]+.data, caf_token.\[0-9\]+, \\(\\(integer\\(kind=.\\)\\) parm.\[0-9\]+.data - \\(\\(integer\\(kind=.\\)\\) y.\[0-9\]+\\) \\+ caf_offset.\[0-9\]+\\);" 0 "original" } }
 !
Index: gcc/testsuite/gfortran.dg/warning-directive-2.F90
===================================================================
--- gcc/testsuite/gfortran.dg/warning-directive-2.F90	(revision 195171)
+++ gcc/testsuite/gfortran.dg/warning-directive-2.F90	(working copy)
@@ -1,5 +1,5 @@ 
 ! { dg-do preprocess }
 ! { dg-options "-std=f95 -fdiagnostics-show-option -Werror=cpp" }
-! { dg-message "some warnings being treated as errors" "" {target "*-*-*"} 0 } 
+! { dg-message "some warnings being treated as errors" "" { target *-*-* } 0 } 
 #warning "Printed"
 ! { dg-error "\"Printed\" .-Werror=cpp." "" { target *-*-* } 4 }
Index: gcc/testsuite/gfortran.dg/bounds_check_5.f90
===================================================================
--- gcc/testsuite/gfortran.dg/bounds_check_5.f90	(revision 195171)
+++ gcc/testsuite/gfortran.dg/bounds_check_5.f90	(working copy)
@@ -1,4 +1,5 @@ 
 ! { dg-do run }
+! { dg-options "-fbounds-check" }
 ! This tests the fix for PR30190, in which the array reference
 ! in the associated statement would cause a segfault.
 !
Index: gcc/testsuite/gfortran.dg/move_alloc_13.f90
===================================================================
--- gcc/testsuite/gfortran.dg/move_alloc_13.f90	(revision 195171)
+++ gcc/testsuite/gfortran.dg/move_alloc_13.f90	(working copy)
@@ -1,4 +1,4 @@ 
-! { dg-do run}
+! { dg-do run }
 !
 ! PR fortran/51970
 ! PR fortran/51977
Index: gcc/testsuite/gfortran.dg/structure_constructor_11.f90
===================================================================
--- gcc/testsuite/gfortran.dg/structure_constructor_11.f90	(revision 195171)
+++ gcc/testsuite/gfortran.dg/structure_constructor_11.f90	(working copy)
@@ -1,4 +1,4 @@ 
-! { dg-do run}
+! { dg-do run }
 ! { dg-options "-fdump-tree-original" }
 !
 ! PR fortran/54603