diff options
author | hp <hp@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-03-05 00:59:34 +0000 |
---|---|---|
committer | hp <hp@138bc75d-0d04-0410-961f-82ee72b054a4> | 2008-03-05 00:59:34 +0000 |
commit | b5857ecee8b290153fa11d75285f71d673bbcf12 (patch) | |
tree | ea28ae6d3f823748d52a89bb809af28d3352877a | |
parent | 57c564763db43faeb6fd8f8c55987eb877528a0a (diff) | |
download | gcc-b5857ecee8b290153fa11d75285f71d673bbcf12.tar.gz |
* lib/lib/target-supports.exp (check_effective_target_fd_truncate):
New.
* gfortran.fortran-torture/execute/list_read_1.x,
gfortran.fortran-torture/execute/read_null_string.x,
gfortran.fortran-torture/execute/backspace.x,
gfortran.fortran-torture/execute/seq_io.x,
gfortran.fortran-torture/execute/slash_edit.x,
gfortran.fortran-torture/execute/unopened_unit_1.x,
gfortran.dg/namelist_21.f90, gfortran.dg/advance_5.f90,
gfortran.dg/fmt_t_7.f, gfortran.dg/eor_1.f90,
gfortran.dg/read_x_past.f, gfortran.dg/tl_editing.f90,
gfortran.dg/ftell_2.f90, gfortran.dg/namelist_13.f90,
gfortran.dg/namelist_22.f90, gfortran.dg/advance_6.f90,
gfortran.dg/read_bad_advance.f90, gfortran.dg/func_derived_3.f90,
gfortran.dg/namelist_40.f90, gfortran.dg/x_slash_2.f,
gfortran.dg/namelist_14.f90, gfortran.dg/backspace_1.f,
gfortran.dg/namelist_23.f90, gfortran.dg/pr17285.f90,
gfortran.dg/read_noadvance.f90, gfortran.dg/namelist_use_only.f90,
gfortran.dg/namelist_41.f90, gfortran.dg/namelist_15.f90,
gfortran.dg/backspace_3.f, gfortran.dg/backslash_3.f,
gfortran.dg/namelist_24.f90, gfortran.dg/pr17286.f90,
gfortran.dg/endfile.f90, gfortran.dg/open_access_append_1.f90,
gfortran.dg/fmt_huge.f90, gfortran.dg/namelist_42.f90,
gfortran.dg/pr18392.f90, gfortran.dg/pr19155.f, gfortran.dg/pr12884.f,
gfortran.dg/namelist_16.f90, gfortran.dg/backspace_5.f,
gfortran.dg/open_readonly_1.f90, gfortran.dg/fmt_read.f90,
gfortran.dg/iostat_1.f90, gfortran.dg/namelist_43.f90,
gfortran.dg/read_size_noadvance.f90, gfortran.dg/inquire_5.f90,
gfortran.dg/read_many_1.f, gfortran.dg/namelist_17.f90,
gfortran.dg/list_read_1.f90, gfortran.dg/backspace_10.f90,
gfortran.dg/namelist_26.f90, gfortran.dg/unf_read_corrupted_2.f90,
gfortran.dg/record_marker_1.f90, gfortran.dg/convert_implied_open.f90,
gfortran.dg/iostat_2.f90, gfortran.dg/write_check3.f90,
gfortran.dg/namelist_44.f90, gfortran.dg/namelist_use.f90,
gfortran.dg/rewind_1.f90, gfortran.dg/streamio_11.f90,
gfortran.dg/namelist_18.f90, gfortran.dg/backspace_9.f,
gfortran.dg/dos_eol.f, gfortran.dg/read_eof_1.f90,
gfortran.dg/namelist_27.f90, gfortran.dg/pad_no.f90,
gfortran.dg/endfile.f, gfortran.dg/namelist_11.f,
gfortran.dg/namelist_19.f90, gfortran.dg/eor_handling_1.f90,
gfortran.dg/write_rewind_1.f, gfortran.dg/comma.f,
gfortran.dg/read_eof_2.f90, gfortran.dg/namelist_28.f90,
gfortran.dg/record_marker_3.f90, gfortran.dg/complex_read.f90,
gfortran.dg/namelist_37.f90, gfortran.dg/error_recovery_5.f90,
gfortran.dg/namelist_char_only.f90, gfortran.dg/pr18122.f90,
gfortran.dg/list_read_4.f90, gfortran.dg/eor_handling_2.f90,
gfortran.dg/read_eof_3.f90, gfortran.dg/dollar_edit_descriptor_1.f,
gfortran.dg/pr19467.f90, gfortran.dg/namelist_38.f90,
gfortran.dg/inquire_9.f90, gfortran.dg/list_read_5.f90,
gfortran.dg/noadv_size.f90, gfortran.dg/backslash_1.f90,
gfortran.dg/eor_handling_3.f90, gfortran.dg/read_eof_4.f90,
gfortran.dg/runtime_warning_1.f90, gfortran.dg/x_slash_1.f,
gfortran.dg/namelist_39.f90, gfortran.dg/streamio_3.f90,
gfortran.dg/read_comma.f, gfortran.dg/pr19657.f,
gfortran.dg/streamio_15.f90, gfortran.dg/list_read_6.f90,
gfortran.dg/eor_handling_4.f90, gfortran.dg/backslash_2.f90,
gfortran.dg/pr19216.f, gfortran.dg/PR19872.f,
gfortran.dg/backspace_2.f, gfortran.dg/empty_format_1.f90,
gfortran.dg/streamio_4.f90, gfortran.dg/append_1.f90,
gfortran.dg/fgetc_1.f90, gfortran.dg/complex_write.f90,
gfortran.dg/list_read_7.f90, gfortran.dg/eor_handling_5.f90,
gfortran.dg/fmt_t_1.f90, gfortran.dg/pr17090.f90,
gfortran.dg/backspace_4.f, gfortran.dg/shape_3.f90,
gfortran.dg/unf_io_convert_1.f90, gfortran.dg/fgetc_2.f90,
gfortran.dg/vector_subscript_3.f90, gfortran.dg/list_read_8.f90,
gfortran.dg/flush_1.f90, gfortran.dg/advance_1.f90,
gfortran.dg/fmt_t_2.f90, gfortran.dg/backspace_6.f,
gfortran.dg/slash_1.f90, gfortran.dg/stat_1.f90,
gfortran.dg/unformatted_recl_1.f90, gfortran.dg/record_marker_2.f,
gfortran.dg/overwrite_1.f, gfortran.dg/unf_io_convert_2.f90,
gfortran.dg/fmt_t_3.f90, gfortran.dg/backspace_8.f,
gfortran.dg/stat_2.f90, gfortran.dg/pr18210.f90,
gfortran.dg/unformatted_subrecord_1.f90, gfortran.dg/pr20257.f90,
gfortran.dg/eof_1.f90, gfortran.dg/fmt_t_4.f90,
gfortran.dg/unf_short_record_1.f90, gfortran.dg/fmt_exhaust.f90,
gfortran.dg/namelist_20.f90, gfortran.dg/advance_4.f90,
gfortran.dg/fmt_t_5.f90, gfortran.dg/namelist_12.f,
gfortran.dg/backspace_7.f90, gfortran.dg/write_rewind_2.f,
gfortran.dg/ftell_1.f90, gfortran.dg/fseek.f90,
gfortran.dg/write_back.f: Gate test on effective_target
fd_truncate.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@132885 138bc75d-0d04-0410-961f-82ee72b054a4
152 files changed, 310 insertions, 145 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 27064e263de..5a28806b7de 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,87 @@ +2008-03-05 Hans-Peter Nilsson <hp@axis.com> + + * lib/lib/target-supports.exp (check_effective_target_fd_truncate): + New. + * gfortran.fortran-torture/execute/list_read_1.x, + gfortran.fortran-torture/execute/read_null_string.x, + gfortran.fortran-torture/execute/backspace.x, + gfortran.fortran-torture/execute/seq_io.x, + gfortran.fortran-torture/execute/slash_edit.x, + gfortran.fortran-torture/execute/unopened_unit_1.x, + gfortran.dg/namelist_21.f90, gfortran.dg/advance_5.f90, + gfortran.dg/fmt_t_7.f, gfortran.dg/eor_1.f90, + gfortran.dg/read_x_past.f, gfortran.dg/tl_editing.f90, + gfortran.dg/ftell_2.f90, gfortran.dg/namelist_13.f90, + gfortran.dg/namelist_22.f90, gfortran.dg/advance_6.f90, + gfortran.dg/read_bad_advance.f90, gfortran.dg/func_derived_3.f90, + gfortran.dg/namelist_40.f90, gfortran.dg/x_slash_2.f, + gfortran.dg/namelist_14.f90, gfortran.dg/backspace_1.f, + gfortran.dg/namelist_23.f90, gfortran.dg/pr17285.f90, + gfortran.dg/read_noadvance.f90, gfortran.dg/namelist_use_only.f90, + gfortran.dg/namelist_41.f90, gfortran.dg/namelist_15.f90, + gfortran.dg/backspace_3.f, gfortran.dg/backslash_3.f, + gfortran.dg/namelist_24.f90, gfortran.dg/pr17286.f90, + gfortran.dg/endfile.f90, gfortran.dg/open_access_append_1.f90, + gfortran.dg/fmt_huge.f90, gfortran.dg/namelist_42.f90, + gfortran.dg/pr18392.f90, gfortran.dg/pr19155.f, gfortran.dg/pr12884.f, + gfortran.dg/namelist_16.f90, gfortran.dg/backspace_5.f, + gfortran.dg/open_readonly_1.f90, gfortran.dg/fmt_read.f90, + gfortran.dg/iostat_1.f90, gfortran.dg/namelist_43.f90, + gfortran.dg/read_size_noadvance.f90, gfortran.dg/inquire_5.f90, + gfortran.dg/read_many_1.f, gfortran.dg/namelist_17.f90, + gfortran.dg/list_read_1.f90, gfortran.dg/backspace_10.f90, + gfortran.dg/namelist_26.f90, gfortran.dg/unf_read_corrupted_2.f90, + gfortran.dg/record_marker_1.f90, gfortran.dg/convert_implied_open.f90, + gfortran.dg/iostat_2.f90, gfortran.dg/write_check3.f90, + gfortran.dg/namelist_44.f90, gfortran.dg/namelist_use.f90, + gfortran.dg/rewind_1.f90, gfortran.dg/streamio_11.f90, + gfortran.dg/namelist_18.f90, gfortran.dg/backspace_9.f, + gfortran.dg/dos_eol.f, gfortran.dg/read_eof_1.f90, + gfortran.dg/namelist_27.f90, gfortran.dg/pad_no.f90, + gfortran.dg/endfile.f, gfortran.dg/namelist_11.f, + gfortran.dg/namelist_19.f90, gfortran.dg/eor_handling_1.f90, + gfortran.dg/write_rewind_1.f, gfortran.dg/comma.f, + gfortran.dg/read_eof_2.f90, gfortran.dg/namelist_28.f90, + gfortran.dg/record_marker_3.f90, gfortran.dg/complex_read.f90, + gfortran.dg/namelist_37.f90, gfortran.dg/error_recovery_5.f90, + gfortran.dg/namelist_char_only.f90, gfortran.dg/pr18122.f90, + gfortran.dg/list_read_4.f90, gfortran.dg/eor_handling_2.f90, + gfortran.dg/read_eof_3.f90, gfortran.dg/dollar_edit_descriptor_1.f, + gfortran.dg/pr19467.f90, gfortran.dg/namelist_38.f90, + gfortran.dg/inquire_9.f90, gfortran.dg/list_read_5.f90, + gfortran.dg/noadv_size.f90, gfortran.dg/backslash_1.f90, + gfortran.dg/eor_handling_3.f90, gfortran.dg/read_eof_4.f90, + gfortran.dg/runtime_warning_1.f90, gfortran.dg/x_slash_1.f, + gfortran.dg/namelist_39.f90, gfortran.dg/streamio_3.f90, + gfortran.dg/read_comma.f, gfortran.dg/pr19657.f, + gfortran.dg/streamio_15.f90, gfortran.dg/list_read_6.f90, + gfortran.dg/eor_handling_4.f90, gfortran.dg/backslash_2.f90, + gfortran.dg/pr19216.f, gfortran.dg/PR19872.f, + gfortran.dg/backspace_2.f, gfortran.dg/empty_format_1.f90, + gfortran.dg/streamio_4.f90, gfortran.dg/append_1.f90, + gfortran.dg/fgetc_1.f90, gfortran.dg/complex_write.f90, + gfortran.dg/list_read_7.f90, gfortran.dg/eor_handling_5.f90, + gfortran.dg/fmt_t_1.f90, gfortran.dg/pr17090.f90, + gfortran.dg/backspace_4.f, gfortran.dg/shape_3.f90, + gfortran.dg/unf_io_convert_1.f90, gfortran.dg/fgetc_2.f90, + gfortran.dg/vector_subscript_3.f90, gfortran.dg/list_read_8.f90, + gfortran.dg/flush_1.f90, gfortran.dg/advance_1.f90, + gfortran.dg/fmt_t_2.f90, gfortran.dg/backspace_6.f, + gfortran.dg/slash_1.f90, gfortran.dg/stat_1.f90, + gfortran.dg/unformatted_recl_1.f90, gfortran.dg/record_marker_2.f, + gfortran.dg/overwrite_1.f, gfortran.dg/unf_io_convert_2.f90, + gfortran.dg/fmt_t_3.f90, gfortran.dg/backspace_8.f, + gfortran.dg/stat_2.f90, gfortran.dg/pr18210.f90, + gfortran.dg/unformatted_subrecord_1.f90, gfortran.dg/pr20257.f90, + gfortran.dg/eof_1.f90, gfortran.dg/fmt_t_4.f90, + gfortran.dg/unf_short_record_1.f90, gfortran.dg/fmt_exhaust.f90, + gfortran.dg/namelist_20.f90, gfortran.dg/advance_4.f90, + gfortran.dg/fmt_t_5.f90, gfortran.dg/namelist_12.f, + gfortran.dg/backspace_7.f90, gfortran.dg/write_rewind_2.f, + gfortran.dg/ftell_1.f90, gfortran.dg/fseek.f90, + gfortran.dg/write_back.f: Gate test on effective_target + fd_truncate. + 2008-03-04 Joseph Myers <joseph@codesourcery.com> * gcc.dg/tree-ssa/loop-1.c: Handle i?86-*-mingw* i?86-*-cygwin* as diff --git a/gcc/testsuite/gfortran.dg/PR19872.f b/gcc/testsuite/gfortran.dg/PR19872.f index 12bba3352a2..edc743b2e16 100644 --- a/gcc/testsuite/gfortran.dg/PR19872.f +++ b/gcc/testsuite/gfortran.dg/PR19872.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 19872 - closed and re-opened file not overwriten implicit none integer i(4) diff --git a/gcc/testsuite/gfortran.dg/advance_1.f90 b/gcc/testsuite/gfortran.dg/advance_1.f90 index 9002c52b5f7..7e55e94334c 100644 --- a/gcc/testsuite/gfortran.dg/advance_1.f90 +++ b/gcc/testsuite/gfortran.dg/advance_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25463 Check that advance='no' works correctly. ! Derived from example given in PR by Thomas Koenig ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/advance_4.f90 b/gcc/testsuite/gfortran.dg/advance_4.f90 index ab22311a806..633f90a583a 100644 --- a/gcc/testsuite/gfortran.dg/advance_4.f90 +++ b/gcc/testsuite/gfortran.dg/advance_4.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR31207 Last record truncated for read after short write program main character(10) :: answer @@ -7,4 +7,4 @@ program main read (12, '(6A)') answer close (12, status="delete") if (answer /= "XABCDX") call abort() -end program main
\ No newline at end of file +end program main diff --git a/gcc/testsuite/gfortran.dg/advance_5.f90 b/gcc/testsuite/gfortran.dg/advance_5.f90 index 3a48e536606..f906c721f34 100644 --- a/gcc/testsuite/gfortran.dg/advance_5.f90 +++ b/gcc/testsuite/gfortran.dg/advance_5.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR31207 Last record truncated for read after short write. character(len=20) :: b ! write something no advance diff --git a/gcc/testsuite/gfortran.dg/advance_6.f90 b/gcc/testsuite/gfortran.dg/advance_6.f90 index f1967b014ba..1a42cca923d 100644 --- a/gcc/testsuite/gfortran.dg/advance_6.f90 +++ b/gcc/testsuite/gfortran.dg/advance_6.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 34370 - file positioning after non-advancing I/O didn't add ! a record marker. diff --git a/gcc/testsuite/gfortran.dg/append_1.f90 b/gcc/testsuite/gfortran.dg/append_1.f90 index 8b81bc38484..e058914bf56 100644 --- a/gcc/testsuite/gfortran.dg/append_1.f90 +++ b/gcc/testsuite/gfortran.dg/append_1.f90 @@ -1,7 +1,7 @@ ! PR libfortran/21471 ! Testing POSITION="APPEND" ! -! { dg-do run } +! { dg-do run { target fd_truncate } } subroutine failed close (10,status='delete') call abort diff --git a/gcc/testsuite/gfortran.dg/backslash_1.f90 b/gcc/testsuite/gfortran.dg/backslash_1.f90 index b9851342bb2..ab7fc6ffc94 100644 --- a/gcc/testsuite/gfortran.dg/backslash_1.f90 +++ b/gcc/testsuite/gfortran.dg/backslash_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } character(len=4) a open (10, status='scratch') write (10,'(A)') '1\n2' diff --git a/gcc/testsuite/gfortran.dg/backslash_2.f90 b/gcc/testsuite/gfortran.dg/backslash_2.f90 index 2f954d53949..dc4714f32e8 100644 --- a/gcc/testsuite/gfortran.dg/backslash_2.f90 +++ b/gcc/testsuite/gfortran.dg/backslash_2.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-fbackslash" } integer :: i, e open (10, status='scratch') diff --git a/gcc/testsuite/gfortran.dg/backslash_3.f b/gcc/testsuite/gfortran.dg/backslash_3.f index 905d2b4c302..8625b3724e4 100644 --- a/gcc/testsuite/gfortran.dg/backslash_3.f +++ b/gcc/testsuite/gfortran.dg/backslash_3.f @@ -1,4 +1,4 @@ -C { dg-do run } +C { dg-do run { target fd_truncate } } C { dg-options "-fbackslash" } C PR fortran/30278 program a diff --git a/gcc/testsuite/gfortran.dg/backspace_1.f b/gcc/testsuite/gfortran.dg/backspace_1.f index c3ec0c41756..4cfc9c13225 100644 --- a/gcc/testsuite/gfortran.dg/backspace_1.f +++ b/gcc/testsuite/gfortran.dg/backspace_1.f @@ -1,5 +1,5 @@ ! This file is all about BACKSPACE -! { dg-do run } +! { dg-do run { target fd_truncate } } integer i, n, nr real x(10), y(10) diff --git a/gcc/testsuite/gfortran.dg/backspace_10.f90 b/gcc/testsuite/gfortran.dg/backspace_10.f90 index 574d464c4b3..368a75973a7 100644 --- a/gcc/testsuite/gfortran.dg/backspace_10.f90 +++ b/gcc/testsuite/gfortran.dg/backspace_10.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR33307 I/O read/positioning problem - in BACKSPACE ! Test case devloped from test in PR by Jerry DeLisle <jvdelisle@gcc.gnu.org> program gfcbug69b diff --git a/gcc/testsuite/gfortran.dg/backspace_2.f b/gcc/testsuite/gfortran.dg/backspace_2.f index a8c55e7f5c1..3b633355b2b 100644 --- a/gcc/testsuite/gfortran.dg/backspace_2.f +++ b/gcc/testsuite/gfortran.dg/backspace_2.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25139 Repeated backspaces and reads. ! Derived from example given in PR by Dale Ranta and FX Coudert ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/backspace_3.f b/gcc/testsuite/gfortran.dg/backspace_3.f index 419063b94a2..2006cd4f969 100644 --- a/gcc/testsuite/gfortran.dg/backspace_3.f +++ b/gcc/testsuite/gfortran.dg/backspace_3.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25598 Error on repeated backspaces. ! Derived from example given in PR by Dale Ranta ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/backspace_4.f b/gcc/testsuite/gfortran.dg/backspace_4.f index 69e0f40c7a1..6891c3c3434 100644 --- a/gcc/testsuite/gfortran.dg/backspace_4.f +++ b/gcc/testsuite/gfortran.dg/backspace_4.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25598 Error on repeated backspaces. ! Derived from example given in PR by Dale Ranta ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/backspace_5.f b/gcc/testsuite/gfortran.dg/backspace_5.f index 4cd657a7838..8ae375284a5 100644 --- a/gcc/testsuite/gfortran.dg/backspace_5.f +++ b/gcc/testsuite/gfortran.dg/backspace_5.f @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! PR26464 File I/O error related to buffering and BACKSPACE ! Test case derived from case by Dale Ranta. ! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/backspace_6.f b/gcc/testsuite/gfortran.dg/backspace_6.f index 4e594f0a8c6..90affdc7791 100644 --- a/gcc/testsuite/gfortran.dg/backspace_6.f +++ b/gcc/testsuite/gfortran.dg/backspace_6.f @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! PR26464 File I/O error related to buffering and BACKSPACE ! Test case derived from case by Dale Ranta. ! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/backspace_7.f90 b/gcc/testsuite/gfortran.dg/backspace_7.f90 index 4f0b9e975d6..09cce731a90 100644 --- a/gcc/testsuite/gfortran.dg/backspace_7.f90 +++ b/gcc/testsuite/gfortran.dg/backspace_7.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } !pr18284 BACKSPACE broken open(unit=10,access='SEQUENTIAL',status='SCRATCH') do I = 1,200 diff --git a/gcc/testsuite/gfortran.dg/backspace_8.f b/gcc/testsuite/gfortran.dg/backspace_8.f index 8c8c96aacec..c25dd5b4300 100644 --- a/gcc/testsuite/gfortran.dg/backspace_8.f +++ b/gcc/testsuite/gfortran.dg/backspace_8.f @@ -1,4 +1,4 @@ -C { dg-do run } +C { dg-do run { target fd_truncate } } C PR libfortran/31618 - backspace after an error didn't work. program main character*78 msg diff --git a/gcc/testsuite/gfortran.dg/backspace_9.f b/gcc/testsuite/gfortran.dg/backspace_9.f index fe62ea5a6e0..01713b96752 100644 --- a/gcc/testsuite/gfortran.dg/backspace_9.f +++ b/gcc/testsuite/gfortran.dg/backspace_9.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR32235 incorrectly position text file after backspace ! Test case from PR, prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org> program main diff --git a/gcc/testsuite/gfortran.dg/comma.f b/gcc/testsuite/gfortran.dg/comma.f index b369bf4b4ba..08c45179528 100644 --- a/gcc/testsuite/gfortran.dg/comma.f +++ b/gcc/testsuite/gfortran.dg/comma.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25419 Default input with commas. ! Derived from example given in PR. ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/complex_read.f90 b/gcc/testsuite/gfortran.dg/complex_read.f90 index c12b66c5b43..102a13522f9 100644 --- a/gcc/testsuite/gfortran.dg/complex_read.f90 +++ b/gcc/testsuite/gfortran.dg/complex_read.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Test of the fix to the bug in NIST fm906.for. ! Contributed by Paul Thomas <pault@gcc.gnu.org> ! diff --git a/gcc/testsuite/gfortran.dg/complex_write.f90 b/gcc/testsuite/gfortran.dg/complex_write.f90 index 694c069e368..763f3ab1735 100644 --- a/gcc/testsuite/gfortran.dg/complex_write.f90 +++ b/gcc/testsuite/gfortran.dg/complex_write.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr 19071 ! test case provided by ! Thomas.Koenig@online.de diff --git a/gcc/testsuite/gfortran.dg/convert_implied_open.f90 b/gcc/testsuite/gfortran.dg/convert_implied_open.f90 index 9c25b5d961c..1f0abf3f8a7 100644 --- a/gcc/testsuite/gfortran.dg/convert_implied_open.f90 +++ b/gcc/testsuite/gfortran.dg/convert_implied_open.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-fconvert=swap" } ! PR 26735 - implied open didn't use to honor -fconvert program main diff --git a/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f b/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f index af22c453636..93e5033293b 100644 --- a/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f +++ b/gcc/testsuite/gfortran.dg/dollar_edit_descriptor_1.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-w" } ! PR libfortran/20006 character*5 c diff --git a/gcc/testsuite/gfortran.dg/dos_eol.f b/gcc/testsuite/gfortran.dg/dos_eol.f index 3a22a14b143..77f36a5fb20 100644 --- a/gcc/testsuite/gfortran.dg/dos_eol.f +++ b/gcc/testsuite/gfortran.dg/dos_eol.f @@ -1,5 +1,5 @@ ! PR libfortran/19678 and PR libfortran/19679 -! { dg-do run } +! { dg-do run { target fd_truncate } } integer i, j open (10,status='scratch') diff --git a/gcc/testsuite/gfortran.dg/empty_format_1.f90 b/gcc/testsuite/gfortran.dg/empty_format_1.f90 index 79a2d0c17d7..e49ea4a5aee 100644 --- a/gcc/testsuite/gfortran.dg/empty_format_1.f90 +++ b/gcc/testsuite/gfortran.dg/empty_format_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 17709 ! We weren't resetting the internal EOR flag correctly, so the second read ! wasn't advancing to the next line. diff --git a/gcc/testsuite/gfortran.dg/endfile.f b/gcc/testsuite/gfortran.dg/endfile.f index 6ece5459fa3..61b43b859f2 100644 --- a/gcc/testsuite/gfortran.dg/endfile.f +++ b/gcc/testsuite/gfortran.dg/endfile.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25550 file data corrupted after reading end of file. ! Derived from example given in PR from Dale Ranta. ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/endfile.f90 b/gcc/testsuite/gfortran.dg/endfile.f90 index 1eabe9ffc7c..60875ce2338 100644 --- a/gcc/testsuite/gfortran.dg/endfile.f90 +++ b/gcc/testsuite/gfortran.dg/endfile.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr18364 endfile does not truncate file. ! write out 20 records ! rewind diff --git a/gcc/testsuite/gfortran.dg/eof_1.f90 b/gcc/testsuite/gfortran.dg/eof_1.f90 index 05726bd1413..09bf9234774 100644 --- a/gcc/testsuite/gfortran.dg/eof_1.f90 +++ b/gcc/testsuite/gfortran.dg/eof_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Program to test for proper EOF errors when reading past the end of a file. ! We used to get this wrong when a formatted read followed a list formatted ! read. diff --git a/gcc/testsuite/gfortran.dg/eor_1.f90 b/gcc/testsuite/gfortran.dg/eor_1.f90 index dd3b5e98f70..fecbe92a412 100644 --- a/gcc/testsuite/gfortran.dg/eor_1.f90 +++ b/gcc/testsuite/gfortran.dg/eor_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 19451: The test for advance='NO' with eor used to be reversed. program main character*2 c diff --git a/gcc/testsuite/gfortran.dg/eor_handling_1.f90 b/gcc/testsuite/gfortran.dg/eor_handling_1.f90 index 241f8a0fe4e..20b1998b098 100644 --- a/gcc/testsuite/gfortran.dg/eor_handling_1.f90 +++ b/gcc/testsuite/gfortran.dg/eor_handling_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 17992: Reading an empty file should yield zero with pad='YES' ! (which is the default). ! Test case supplied by milan@cmm.ki.si. diff --git a/gcc/testsuite/gfortran.dg/eor_handling_2.f90 b/gcc/testsuite/gfortran.dg/eor_handling_2.f90 index 9ae56384695..ece547b855d 100644 --- a/gcc/testsuite/gfortran.dg/eor_handling_2.f90 +++ b/gcc/testsuite/gfortran.dg/eor_handling_2.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 19568: Don't read across end of line when the format is longer ! than the line length and pad='yes' (default) program main diff --git a/gcc/testsuite/gfortran.dg/eor_handling_3.f90 b/gcc/testsuite/gfortran.dg/eor_handling_3.f90 index 4225e867a85..7ba5c4b82fd 100644 --- a/gcc/testsuite/gfortran.dg/eor_handling_3.f90 +++ b/gcc/testsuite/gfortran.dg/eor_handling_3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 19595: Handle end-of-record condition with pad=yes (default) program main integer i1, i2 diff --git a/gcc/testsuite/gfortran.dg/eor_handling_4.f90 b/gcc/testsuite/gfortran.dg/eor_handling_4.f90 index 300c10b820a..ce9fe5e4deb 100644 --- a/gcc/testsuite/gfortran.dg/eor_handling_4.f90 +++ b/gcc/testsuite/gfortran.dg/eor_handling_4.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 20092, 20131: Handle end-of-record condition with pad=yes (default) ! for standard input. This test case only really tests anything if, ! by changing unit 5, you get to manipulate the standard input. diff --git a/gcc/testsuite/gfortran.dg/eor_handling_5.f90 b/gcc/testsuite/gfortran.dg/eor_handling_5.f90 index c116fb7bdea..661d67c9fb5 100644 --- a/gcc/testsuite/gfortran.dg/eor_handling_5.f90 +++ b/gcc/testsuite/gfortran.dg/eor_handling_5.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 20661: Handle non-advancing I/O with iostat ! Test case by Walt Brainerd, The Fortran Company diff --git a/gcc/testsuite/gfortran.dg/error_recovery_5.f90 b/gcc/testsuite/gfortran.dg/error_recovery_5.f90 index 88acf93ccf7..9cb696cdb5e 100644 --- a/gcc/testsuite/gfortran.dg/error_recovery_5.f90 +++ b/gcc/testsuite/gfortran.dg/error_recovery_5.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR34411 hang-up during read of non-expected input ! Test case derived from that given in PR ! Prior to patch, the do loop was infinite, limits set in this one diff --git a/gcc/testsuite/gfortran.dg/fgetc_1.f90 b/gcc/testsuite/gfortran.dg/fgetc_1.f90 index 966e15a98a4..6277f3c1d15 100644 --- a/gcc/testsuite/gfortran.dg/fgetc_1.f90 +++ b/gcc/testsuite/gfortran.dg/fgetc_1.f90 @@ -1,5 +1,5 @@ ! Testcase for the FGETC and FPUTC intrinsics -! { dg-do run } +! { dg-do run { target fd_truncate } } character(len=5) s integer st diff --git a/gcc/testsuite/gfortran.dg/fgetc_2.f90 b/gcc/testsuite/gfortran.dg/fgetc_2.f90 index 6dd12c4e242..9c1a5dad14b 100644 --- a/gcc/testsuite/gfortran.dg/fgetc_2.f90 +++ b/gcc/testsuite/gfortran.dg/fgetc_2.f90 @@ -1,5 +1,5 @@ ! Testcase for the FGETC and FPUTC intrinsics -! { dg-do run } +! { dg-do run { target fd_truncate } } character(len=5) s integer st diff --git a/gcc/testsuite/gfortran.dg/flush_1.f90 b/gcc/testsuite/gfortran.dg/flush_1.f90 index 90875dc651b..e35955a27f3 100644 --- a/gcc/testsuite/gfortran.dg/flush_1.f90 +++ b/gcc/testsuite/gfortran.dg/flush_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 22390 Implement flush statement program flush_1 diff --git a/gcc/testsuite/gfortran.dg/fmt_exhaust.f90 b/gcc/testsuite/gfortran.dg/fmt_exhaust.f90 index 5db34051485..bea3f800532 100644 --- a/gcc/testsuite/gfortran.dg/fmt_exhaust.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_exhaust.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR27304 Test running out of data descriptors with data remaining. ! Derived from case in PR. Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>. program test diff --git a/gcc/testsuite/gfortran.dg/fmt_huge.f90 b/gcc/testsuite/gfortran.dg/fmt_huge.f90 index 43c4e2ac273..f7b243cd3b6 100644 --- a/gcc/testsuite/gfortran.dg/fmt_huge.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_huge.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR32446 printing big numbers in F0.1 format. ! This segfaulted before the patch. open (10, status="scratch") diff --git a/gcc/testsuite/gfortran.dg/fmt_read.f90 b/gcc/testsuite/gfortran.dg/fmt_read.f90 index 3b33946a523..779ebae4f56 100644 --- a/gcc/testsuite/gfortran.dg/fmt_read.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_read.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr18398, missing data on sequential formatted reads ! test contributed by Thomas.Koenig@online.de open(7,status='scratch') diff --git a/gcc/testsuite/gfortran.dg/fmt_t_1.f90 b/gcc/testsuite/gfortran.dg/fmt_t_1.f90 index 157ba131e40..a4562658291 100644 --- a/gcc/testsuite/gfortran.dg/fmt_t_1.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_t_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } integer nrow, vec(15) open (10, status="scratch") write (10, fmt='(a)') '001 1 2 3 4 5 6' diff --git a/gcc/testsuite/gfortran.dg/fmt_t_2.f90 b/gcc/testsuite/gfortran.dg/fmt_t_2.f90 index c2b869481df..6fe8c38ba1d 100644 --- a/gcc/testsuite/gfortran.dg/fmt_t_2.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_t_2.f90 @@ -1,5 +1,5 @@ ! { dg-options "" } -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr24699, handle end-of-record on READ with T format ! test contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> character*132 :: foost1, foost2, foost3 diff --git a/gcc/testsuite/gfortran.dg/fmt_t_3.f90 b/gcc/testsuite/gfortran.dg/fmt_t_3.f90 index 1ec67e11839..c7bf8e8f8a2 100644 --- a/gcc/testsuite/gfortran.dg/fmt_t_3.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_t_3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR31051 bug with x and t format descriptors. ! Test case prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org> from PR. program t diff --git a/gcc/testsuite/gfortran.dg/fmt_t_4.f90 b/gcc/testsuite/gfortran.dg/fmt_t_4.f90 index e40a4fc46b7..62b8d49c046 100644 --- a/gcc/testsuite/gfortran.dg/fmt_t_4.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_t_4.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR31199, test case from PR report. program write_write character(len=20) :: a,b,c diff --git a/gcc/testsuite/gfortran.dg/fmt_t_5.f90 b/gcc/testsuite/gfortran.dg/fmt_t_5.f90 index 14185cc05a1..c472e89b19c 100644 --- a/gcc/testsuite/gfortran.dg/fmt_t_5.f90 +++ b/gcc/testsuite/gfortran.dg/fmt_t_5.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR32678 GFortan works incorrectly when writing with FORMAT Tx ! Before patch, NULLs were inserted in output. ! Test case from reporter enhanced to detect this problem. diff --git a/gcc/testsuite/gfortran.dg/fmt_t_7.f b/gcc/testsuite/gfortran.dg/fmt_t_7.f index 443cd2f2d55..baef07ea7bd 100644 --- a/gcc/testsuite/gfortran.dg/fmt_t_7.f +++ b/gcc/testsuite/gfortran.dg/fmt_t_7.f @@ -1,4 +1,4 @@ -! { dg-do run }
+! { dg-do run { target fd_truncate } }
! PR34974 null bytes when reverse-tabbing long records
! Test case prpared by Jerry DeLisle <jvdelisle@gcc.gnu.org>
program test
diff --git a/gcc/testsuite/gfortran.dg/fseek.f90 b/gcc/testsuite/gfortran.dg/fseek.f90 index a42575c2c05..acc8211a414 100644 --- a/gcc/testsuite/gfortran.dg/fseek.f90 +++ b/gcc/testsuite/gfortran.dg/fseek.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } PROGRAM test_fseek INTEGER, PARAMETER :: SEEK_SET = 0, SEEK_CUR = 1, SEEK_END = 2, fd=10 diff --git a/gcc/testsuite/gfortran.dg/ftell_1.f90 b/gcc/testsuite/gfortran.dg/ftell_1.f90 index 4f617acb0f4..59ea85edfc4 100644 --- a/gcc/testsuite/gfortran.dg/ftell_1.f90 +++ b/gcc/testsuite/gfortran.dg/ftell_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } integer(kind=8) o, o2 open (10, status="scratch") diff --git a/gcc/testsuite/gfortran.dg/ftell_2.f90 b/gcc/testsuite/gfortran.dg/ftell_2.f90 index ec7c96c3da4..d8fd34803d5 100644 --- a/gcc/testsuite/gfortran.dg/ftell_2.f90 +++ b/gcc/testsuite/gfortran.dg/ftell_2.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } integer(kind=8) o open (10, status="scratch") if (ftell(10) /= 0) call abort diff --git a/gcc/testsuite/gfortran.dg/func_derived_3.f90 b/gcc/testsuite/gfortran.dg/func_derived_3.f90 index 6facf218e09..5eb60cfa018 100644 --- a/gcc/testsuite/gfortran.dg/func_derived_3.f90 +++ b/gcc/testsuite/gfortran.dg/func_derived_3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! This tests the "virtual fix" for PR19561, where pointers to derived ! types were not generating correct code. This testcase is based on ! the original PR example. This example not only tests the diff --git a/gcc/testsuite/gfortran.dg/inquire_5.f90 b/gcc/testsuite/gfortran.dg/inquire_5.f90 index 2a5678ba2fc..b2e07be9319 100644 --- a/gcc/testsuite/gfortran.dg/inquire_5.f90 +++ b/gcc/testsuite/gfortran.dg/inquire_5.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr19314 inquire(..position=..) segfaults ! test by Thomas.Koenig@online.de ! bdavis9659@comcast.net diff --git a/gcc/testsuite/gfortran.dg/inquire_9.f90 b/gcc/testsuite/gfortran.dg/inquire_9.f90 index 99cd1af19cf..407eddb5204 100644 --- a/gcc/testsuite/gfortran.dg/inquire_9.f90 +++ b/gcc/testsuite/gfortran.dg/inquire_9.f90 @@ -1,5 +1,5 @@ ! PR fortran/24774 -! { dg-do run } +! { dg-do run { target fd_truncate } } logical :: l l = .true. inquire (file='inquire_9 file that should not exist', exist=l) diff --git a/gcc/testsuite/gfortran.dg/iostat_1.f90 b/gcc/testsuite/gfortran.dg/iostat_1.f90 index 79bc0018fbd..2517eb99235 100644 --- a/gcc/testsuite/gfortran.dg/iostat_1.f90 +++ b/gcc/testsuite/gfortran.dg/iostat_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 23598 - The iostat variable wasn't reset if the previous ! I/O library call had an error. program main diff --git a/gcc/testsuite/gfortran.dg/iostat_2.f90 b/gcc/testsuite/gfortran.dg/iostat_2.f90 index afda93e8092..f4750646611 100644 --- a/gcc/testsuite/gfortran.dg/iostat_2.f90 +++ b/gcc/testsuite/gfortran.dg/iostat_2.f90 @@ -1,5 +1,5 @@ ! PR libfortran/23784 -! { dg-do run } +! { dg-do run { target fd_truncate } } integer i close(10, status="whatever", iostat=i) ! { dg-warning "STATUS specifier in CLOSE statement.*has invalid value" } if (i == 0) call abort() diff --git a/gcc/testsuite/gfortran.dg/list_read_1.f90 b/gcc/testsuite/gfortran.dg/list_read_1.f90 index 6fba90ae738..2a2c5d1755b 100644 --- a/gcc/testsuite/gfortran.dg/list_read_1.f90 +++ b/gcc/testsuite/gfortran.dg/list_read_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Program to test terminators in list-directed input program list_read_1 character(len=5) :: s diff --git a/gcc/testsuite/gfortran.dg/list_read_4.f90 b/gcc/testsuite/gfortran.dg/list_read_4.f90 index fb1770e2303..ba17625473d 100644 --- a/gcc/testsuite/gfortran.dg/list_read_4.f90 +++ b/gcc/testsuite/gfortran.dg/list_read_4.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Test of gfortran list directed read> check delimiters are correctly ! treated. Written in f77 so that g77 will run for comparison. ! diff --git a/gcc/testsuite/gfortran.dg/list_read_5.f90 b/gcc/testsuite/gfortran.dg/list_read_5.f90 index f69d1f3ccff..658c5249722 100644 --- a/gcc/testsuite/gfortran.dg/list_read_5.f90 +++ b/gcc/testsuite/gfortran.dg/list_read_5.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25307 Check handling of end-of-file conditions for list directed reads. ! Prepared by Jerry DeLisle <jvdelisle@gcc.gnu.org> program pr25307 diff --git a/gcc/testsuite/gfortran.dg/list_read_6.f90 b/gcc/testsuite/gfortran.dg/list_read_6.f90 index 5bab50bab13..296d94ca846 100644 --- a/gcc/testsuite/gfortran.dg/list_read_6.f90 +++ b/gcc/testsuite/gfortran.dg/list_read_6.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR30435 Slash at end of input not recognized according to standard. ! Test case from PR by Steve Kargl. diff --git a/gcc/testsuite/gfortran.dg/list_read_7.f90 b/gcc/testsuite/gfortran.dg/list_read_7.f90 index 4ee08354b1d..f9800f2a7e2 100644 --- a/gcc/testsuite/gfortran.dg/list_read_7.f90 +++ b/gcc/testsuite/gfortran.dg/list_read_7.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR33400 Formatted read fails if line ends without line break ! Test case modified from that in PR by <jvdelisle@gcc.gnu.org> integer, parameter :: fgsl_strmax = 128 diff --git a/gcc/testsuite/gfortran.dg/list_read_8.f90 b/gcc/testsuite/gfortran.dg/list_read_8.f90 index 4be75fdb4e2..85fa857e8cd 100644 --- a/gcc/testsuite/gfortran.dg/list_read_8.f90 +++ b/gcc/testsuite/gfortran.dg/list_read_8.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR34676 IO error delayed ! Test case from PR modified by <jvdelisle@gcc.gnu.org> implicit none diff --git a/gcc/testsuite/gfortran.dg/namelist_11.f b/gcc/testsuite/gfortran.dg/namelist_11.f index a8705cc508a..672ee261c20 100644 --- a/gcc/testsuite/gfortran.dg/namelist_11.f +++ b/gcc/testsuite/gfortran.dg/namelist_11.f @@ -1,4 +1,4 @@ -c { dg-do run } +c { dg-do run { target fd_truncate } } c This program tests: namelist comment, a blank line before the nameilist name, the namelist name, c a scalar qualifier, various combinations of space, comma and lf delimiters, f-formats, e-formats c a blank line within the data read, nulls, a range qualifier, a new object name before end of data diff --git a/gcc/testsuite/gfortran.dg/namelist_12.f b/gcc/testsuite/gfortran.dg/namelist_12.f index 69fe3d8ac43..dca96452e21 100644 --- a/gcc/testsuite/gfortran.dg/namelist_12.f +++ b/gcc/testsuite/gfortran.dg/namelist_12.f @@ -1,4 +1,4 @@ -c{ dg-do run } +c{ dg-do run { target fd_truncate } } c This program repeats many of the same tests as test_nml_1 but for integer c instead of real. It also tests repeat nulls, comma delimited character read, c a triplet qualifier, a range with an assumed start, a quote delimited string, diff --git a/gcc/testsuite/gfortran.dg/namelist_13.f90 b/gcc/testsuite/gfortran.dg/namelist_13.f90 index 185b522e7f0..1688e8ddff1 100644 --- a/gcc/testsuite/gfortran.dg/namelist_13.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_13.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests simple derived types. ! Provided by Paul Thomas - pault@gcc.gnu.org diff --git a/gcc/testsuite/gfortran.dg/namelist_14.f90 b/gcc/testsuite/gfortran.dg/namelist_14.f90 index 729f1b2d5c4..d6ab2940bdb 100644 --- a/gcc/testsuite/gfortran.dg/namelist_14.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_14.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests various combinations of intrinsic types, derived types, arrays, ! dummy arguments and common to check nml_get_addr_expr in trans-io.c. ! See comments below for selection. diff --git a/gcc/testsuite/gfortran.dg/namelist_15.f90 b/gcc/testsuite/gfortran.dg/namelist_15.f90 index e900e71d143..65b015cfeed 100644 --- a/gcc/testsuite/gfortran.dg/namelist_15.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_15.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests arrays of derived types containing derived type arrays whose ! components are character arrays - exercises object name parser in ! list_read.c. Checks that namelist output can be reread. diff --git a/gcc/testsuite/gfortran.dg/namelist_16.f90 b/gcc/testsuite/gfortran.dg/namelist_16.f90 index c6eb8f75595..023816f0d02 100644 --- a/gcc/testsuite/gfortran.dg/namelist_16.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_16.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests namelist on complex variables ! provided by Paul Thomas - pault@gcc.gnu.org program namelist_16 diff --git a/gcc/testsuite/gfortran.dg/namelist_17.f90 b/gcc/testsuite/gfortran.dg/namelist_17.f90 index e3eac5210bf..a802a22254a 100644 --- a/gcc/testsuite/gfortran.dg/namelist_17.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_17.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests namelist on logical variables ! provided by Paul Thomas - pault@gcc.gnu.org diff --git a/gcc/testsuite/gfortran.dg/namelist_18.f90 b/gcc/testsuite/gfortran.dg/namelist_18.f90 index eba8b6bc573..f5d4b3dd1e3 100644 --- a/gcc/testsuite/gfortran.dg/namelist_18.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_18.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests character delimiters for namelist write ! provided by Paul Thomas - pault@gcc.gnu.org diff --git a/gcc/testsuite/gfortran.dg/namelist_19.f90 b/gcc/testsuite/gfortran.dg/namelist_19.f90 index c06abf5295b..f7c6d69e8a2 100644 --- a/gcc/testsuite/gfortran.dg/namelist_19.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_19.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Test namelist error trapping. ! provided by Paul Thomas - pault@gcc.gnu.org diff --git a/gcc/testsuite/gfortran.dg/namelist_20.f90 b/gcc/testsuite/gfortran.dg/namelist_20.f90 index 155cf6f8ed2..9b2d896514a 100644 --- a/gcc/testsuite/gfortran.dg/namelist_20.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_20.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests namelist io for an explicit shape array with negative bounds ! provided by Paul Thomas - pault@gcc.gnu.org diff --git a/gcc/testsuite/gfortran.dg/namelist_21.f90 b/gcc/testsuite/gfortran.dg/namelist_21.f90 index 463ef1b9e4f..8d2852d2cca 100644 --- a/gcc/testsuite/gfortran.dg/namelist_21.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_21.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests filling arrays from a namelist read when object list is not complete. ! Developed from a test case provided by Christoph Jacob. ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org>. diff --git a/gcc/testsuite/gfortran.dg/namelist_22.f90 b/gcc/testsuite/gfortran.dg/namelist_22.f90 index 6face8b1f5b..3119e808640 100644 --- a/gcc/testsuite/gfortran.dg/namelist_22.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_22.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! Tests filling arrays from a namelist read when object list is not complete. ! This is the same as namelist_21.f90 except using spaces as seperators instead ! of commas. Developed from a test case provided by Christoph Jacob. diff --git a/gcc/testsuite/gfortran.dg/namelist_23.f90 b/gcc/testsuite/gfortran.dg/namelist_23.f90 index 70a0080ceb2..7d69ef62f3c 100644 --- a/gcc/testsuite/gfortran.dg/namelist_23.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_23.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! PR26136 Filling logical variables from namelist read when object list is not ! complete. Test case derived from PR. ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/namelist_24.f90 b/gcc/testsuite/gfortran.dg/namelist_24.f90 index 11cd2d0a466..c89ab3d2744 100644 --- a/gcc/testsuite/gfortran.dg/namelist_24.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_24.f90 @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } !{ dg-options -std=gnu } ! Tests namelist read when more data is provided then specified by ! array qualifier in list. diff --git a/gcc/testsuite/gfortran.dg/namelist_26.f90 b/gcc/testsuite/gfortran.dg/namelist_26.f90 index 2c1b26062e1..a9cf4fd6b4a 100644 --- a/gcc/testsuite/gfortran.dg/namelist_26.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_26.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR30918 Failure to skip commented out NAMELIST ! Before the patch, this read the commented out namelist and iuse would ! equal 2 when done. Test case from PR. diff --git a/gcc/testsuite/gfortran.dg/namelist_27.f90 b/gcc/testsuite/gfortran.dg/namelist_27.f90 index 10b0031e894..e645ca5bc04 100644 --- a/gcc/testsuite/gfortran.dg/namelist_27.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_27.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR31052 Bad IOSTAT values when readings NAMELISTs past EOF. ! Patch derived from PR, submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> program gfcbug61 diff --git a/gcc/testsuite/gfortran.dg/namelist_28.f90 b/gcc/testsuite/gfortran.dg/namelist_28.f90 index 53b1f0ff002..09015d56e63 100644 --- a/gcc/testsuite/gfortran.dg/namelist_28.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_28.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR31052 Bad IOSTAT values when readings NAMELISTs past EOF. ! Patch derived from PR, submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> program gfcbug61 diff --git a/gcc/testsuite/gfortran.dg/namelist_37.f90 b/gcc/testsuite/gfortran.dg/namelist_37.f90 index 9ff62977710..e200ad0b364 100644 --- a/gcc/testsuite/gfortran.dg/namelist_37.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_37.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR33039 Read NAMELIST: reads wrong namelist name ! Test case from PR modified by Jerry DeLisle <jvdelisle@gcc.gnu.org>
PROGRAM namelist
diff --git a/gcc/testsuite/gfortran.dg/namelist_38.f90 b/gcc/testsuite/gfortran.dg/namelist_38.f90 index 5578654eea4..ed053690386 100644 --- a/gcc/testsuite/gfortran.dg/namelist_38.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_38.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR33253 namelist: reading back a string, also fixed writing with delimiters. ! Test case modified from that of the PR by ! Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/namelist_39.f90 b/gcc/testsuite/gfortran.dg/namelist_39.f90 index 36721409fa5..82e631e0dd0 100644 --- a/gcc/testsuite/gfortran.dg/namelist_39.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_39.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR33421 and PR33253 Weird quotation of namelist output of character arrays ! Test case from Toon Moone, adapted by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/namelist_40.f90 b/gcc/testsuite/gfortran.dg/namelist_40.f90 index 3c9d813343a..5e2c9d871a2 100644 --- a/gcc/testsuite/gfortran.dg/namelist_40.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_40.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR33672 Additional runtime checks needed for namelist reads ! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/namelist_41.f90 b/gcc/testsuite/gfortran.dg/namelist_41.f90 index 2d9a71a91a0..16e0d42b8af 100644 --- a/gcc/testsuite/gfortran.dg/namelist_41.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_41.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR34291 Segfault on &end in namelist expanded read of character implicit none character(len=10), dimension(2) :: var diff --git a/gcc/testsuite/gfortran.dg/namelist_42.f90 b/gcc/testsuite/gfortran.dg/namelist_42.f90 index e2efb6f7467..55dd2caec5d 100644 --- a/gcc/testsuite/gfortran.dg/namelist_42.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_42.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-mieee" { target sh*-*-* } } ! ! PR fortran/34427 diff --git a/gcc/testsuite/gfortran.dg/namelist_43.f90 b/gcc/testsuite/gfortran.dg/namelist_43.f90 index 467b11de145..abad355b9ae 100644 --- a/gcc/testsuite/gfortran.dg/namelist_43.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_43.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-mieee" { target sh*-*-* } } ! ! PR fortran/34427 diff --git a/gcc/testsuite/gfortran.dg/namelist_44.f90 b/gcc/testsuite/gfortran.dg/namelist_44.f90 index 143990261fe..35ea667d3b9 100644 --- a/gcc/testsuite/gfortran.dg/namelist_44.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_44.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! ! PR fortran/34530 ! diff --git a/gcc/testsuite/gfortran.dg/namelist_char_only.f90 b/gcc/testsuite/gfortran.dg/namelist_char_only.f90 index 9993669b38a..ff06171bcee 100644 --- a/gcc/testsuite/gfortran.dg/namelist_char_only.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_char_only.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-O0" } ! Test patch for PR24416.f90 - a used to come back from the read with var ! prepended. diff --git a/gcc/testsuite/gfortran.dg/namelist_use.f90 b/gcc/testsuite/gfortran.dg/namelist_use.f90 index 0460630dd33..ab846862649 100644 --- a/gcc/testsuite/gfortran.dg/namelist_use.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_use.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! This tests the fix for PR22010, where namelists were not being written to ! and read back from modules. It has two namelists: one that is USE ! associated and another that is concatenated by USE and host association. diff --git a/gcc/testsuite/gfortran.dg/namelist_use_only.f90 b/gcc/testsuite/gfortran.dg/namelist_use_only.f90 index a9adf015ded..ce80d5e410d 100644 --- a/gcc/testsuite/gfortran.dg/namelist_use_only.f90 +++ b/gcc/testsuite/gfortran.dg/namelist_use_only.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! This tests the fix for PR22010, where namelists were not being written to ! and read back from modules. It checks that namelists from modules that are ! selected by an ONLY declaration work correctly, even when the variables in diff --git a/gcc/testsuite/gfortran.dg/noadv_size.f90 b/gcc/testsuite/gfortran.dg/noadv_size.f90 index a3a88b18ca7..cfc507a6fd8 100644 --- a/gcc/testsuite/gfortran.dg/noadv_size.f90 +++ b/gcc/testsuite/gfortran.dg/noadv_size.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 20774: Handle size parameter for non-advancing I/O correctly program main open(77,status='scratch') diff --git a/gcc/testsuite/gfortran.dg/open_access_append_1.f90 b/gcc/testsuite/gfortran.dg/open_access_append_1.f90 index 8dae327968d..f67a8a93d34 100644 --- a/gcc/testsuite/gfortran.dg/open_access_append_1.f90 +++ b/gcc/testsuite/gfortran.dg/open_access_append_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Testcase for the GNU extension OPEN(...,ACCESS="APPEND") open (10,file="foo") close (10,status="delete") diff --git a/gcc/testsuite/gfortran.dg/open_readonly_1.f90 b/gcc/testsuite/gfortran.dg/open_readonly_1.f90 index 3adbbd32498..87d3ba7a909 100644 --- a/gcc/testsuite/gfortran.dg/open_readonly_1.f90 +++ b/gcc/testsuite/gfortran.dg/open_readonly_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR19451 ! Writing to a non-empty readonly file caused a segfault. ! We were still trying to write the EOR after an error ocurred diff --git a/gcc/testsuite/gfortran.dg/overwrite_1.f b/gcc/testsuite/gfortran.dg/overwrite_1.f index dda9a8bdf9d..f6c5fdbd979 100644 --- a/gcc/testsuite/gfortran.dg/overwrite_1.f +++ b/gcc/testsuite/gfortran.dg/overwrite_1.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 19872 - closed and re-opened file not overwriten implicit none integer i(4) diff --git a/gcc/testsuite/gfortran.dg/pad_no.f90 b/gcc/testsuite/gfortran.dg/pad_no.f90 index c023adec815..1b5fb2fd9da 100644 --- a/gcc/testsuite/gfortran.dg/pad_no.f90 +++ b/gcc/testsuite/gfortran.dg/pad_no.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Test correct operation for pad='no'. program main character(len=1) line(2) diff --git a/gcc/testsuite/gfortran.dg/pr12884.f b/gcc/testsuite/gfortran.dg/pr12884.f index 425604c02c5..811bef1f6f6 100644 --- a/gcc/testsuite/gfortran.dg/pr12884.f +++ b/gcc/testsuite/gfortran.dg/pr12884.f @@ -1,4 +1,4 @@ -c { dg-do run } +c { dg-do run { target fd_truncate } } c pr 12884 c test namelist with input file containg / before namelist. Also checks c non-standard use of $ instead of & diff --git a/gcc/testsuite/gfortran.dg/pr17090.f90 b/gcc/testsuite/gfortran.dg/pr17090.f90 index 6a685c2eddd..bae2bb7da0e 100644 --- a/gcc/testsuite/gfortran.dg/pr17090.f90 +++ b/gcc/testsuite/gfortran.dg/pr17090.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr 17090 Runtime I/O error ! bdavis9659@comcast.net ! 9/12/2004 diff --git a/gcc/testsuite/gfortran.dg/pr17285.f90 b/gcc/testsuite/gfortran.dg/pr17285.f90 index 58aee327aef..8aa353cd853 100644 --- a/gcc/testsuite/gfortran.dg/pr17285.f90 +++ b/gcc/testsuite/gfortran.dg/pr17285.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr 17285 ! Test that namelist can read its own output. ! At the same time, check arrays and different terminations diff --git a/gcc/testsuite/gfortran.dg/pr17286.f90 b/gcc/testsuite/gfortran.dg/pr17286.f90 index e9beb6d375d..5b946944468 100644 --- a/gcc/testsuite/gfortran.dg/pr17286.f90 +++ b/gcc/testsuite/gfortran.dg/pr17286.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR17286 ! Namelist read failed when spaces exist between the '=' and the numbers ! This is a libgfortran bug diff --git a/gcc/testsuite/gfortran.dg/pr18122.f90 b/gcc/testsuite/gfortran.dg/pr18122.f90 index 3907f0ae158..6e7f200efd7 100644 --- a/gcc/testsuite/gfortran.dg/pr18122.f90 +++ b/gcc/testsuite/gfortran.dg/pr18122.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! test namelist with scalars and arrays. ! Based on example provided by thomas.koenig@online.de diff --git a/gcc/testsuite/gfortran.dg/pr18210.f90 b/gcc/testsuite/gfortran.dg/pr18210.f90 index 60959841378..253f2919816 100644 --- a/gcc/testsuite/gfortran.dg/pr18210.f90 +++ b/gcc/testsuite/gfortran.dg/pr18210.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Names in upper case and object names starting column 2 ! Based on example provided by thomas.koenig@online.de diff --git a/gcc/testsuite/gfortran.dg/pr18392.f90 b/gcc/testsuite/gfortran.dg/pr18392.f90 index de156f5a5fd..3c15d4b3dff 100644 --- a/gcc/testsuite/gfortran.dg/pr18392.f90 +++ b/gcc/testsuite/gfortran.dg/pr18392.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr 18392 ! test namelist with derived types ! Based on example provided by thomas.koenig@online.de diff --git a/gcc/testsuite/gfortran.dg/pr19155.f b/gcc/testsuite/gfortran.dg/pr19155.f index 6387c3f9ce3..003c7fdcc44 100644 --- a/gcc/testsuite/gfortran.dg/pr19155.f +++ b/gcc/testsuite/gfortran.dg/pr19155.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! ! PR libfortran/19155 ! We accept 'E+00' as a valid real number. The standard says it is not, diff --git a/gcc/testsuite/gfortran.dg/pr19216.f b/gcc/testsuite/gfortran.dg/pr19216.f index 76c393836c9..40b3b5a7ae1 100644 --- a/gcc/testsuite/gfortran.dg/pr19216.f +++ b/gcc/testsuite/gfortran.dg/pr19216.f @@ -1,5 +1,5 @@ ! PR libfortran/19216 -! { dg-do run } +! { dg-do run { target fd_truncate } } integer dat(3), i, j data dat / 3,2,1 / diff --git a/gcc/testsuite/gfortran.dg/pr19467.f90 b/gcc/testsuite/gfortran.dg/pr19467.f90 index ab4fa99c40b..03cc7451e8e 100644 --- a/gcc/testsuite/gfortran.dg/pr19467.f90 +++ b/gcc/testsuite/gfortran.dg/pr19467.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr 19467 ! test namelist with character arrays ! Based on example provided by paulthomas2@wanadoo.fr diff --git a/gcc/testsuite/gfortran.dg/pr19657.f b/gcc/testsuite/gfortran.dg/pr19657.f index 1fe32ac7497..a8e2012ee1b 100644 --- a/gcc/testsuite/gfortran.dg/pr19657.f +++ b/gcc/testsuite/gfortran.dg/pr19657.f @@ -1,4 +1,4 @@ -c { dg-do run } +c { dg-do run { target fd_truncate } } c pr 19657 c test namelist not skipped if ending with logical. c Based on example provided by fuyuki@ccsr.u-tokyo.ac.jp diff --git a/gcc/testsuite/gfortran.dg/pr20257.f90 b/gcc/testsuite/gfortran.dg/pr20257.f90 index 3808829b486..ca5a00bf882 100644 --- a/gcc/testsuite/gfortran.dg/pr20257.f90 +++ b/gcc/testsuite/gfortran.dg/pr20257.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } integer,parameter :: n = 10000 real(8) array(10000) diff --git a/gcc/testsuite/gfortran.dg/read_bad_advance.f90 b/gcc/testsuite/gfortran.dg/read_bad_advance.f90 index 5b43cfecc7f..3ca4493c451 100644 --- a/gcc/testsuite/gfortran.dg/read_bad_advance.f90 +++ b/gcc/testsuite/gfortran.dg/read_bad_advance.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR27138 Failure to advance line on bad list directed read. ! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> program test diff --git a/gcc/testsuite/gfortran.dg/read_comma.f b/gcc/testsuite/gfortran.dg/read_comma.f index 593c56d1037..024fceae72c 100644 --- a/gcc/testsuite/gfortran.dg/read_comma.f +++ b/gcc/testsuite/gfortran.dg/read_comma.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25039 This test checks that commas in input fields for formatted sequential ! reads are interpreted as the read completion. If no comma is encountered the ! normal field width determines the end of the read. The test case also checks diff --git a/gcc/testsuite/gfortran.dg/read_eof_1.f90 b/gcc/testsuite/gfortran.dg/read_eof_1.f90 index b5c49016a4a..78ff14a5d9b 100644 --- a/gcc/testsuite/gfortran.dg/read_eof_1.f90 +++ b/gcc/testsuite/gfortran.dg/read_eof_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25697 Check that reading from a file that is at end-of-file does not ! segfault or give error. Test case derived from example in PR from Dale Ranta. ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/read_eof_2.f90 b/gcc/testsuite/gfortran.dg/read_eof_2.f90 index 9017548d463..539553d53d8 100644 --- a/gcc/testsuite/gfortran.dg/read_eof_2.f90 +++ b/gcc/testsuite/gfortran.dg/read_eof_2.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25835 Check that reading from a file that is at end-of-file does not ! segfault or give error. Test case derived from example in PR from Dale Ranta. ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/read_eof_3.f90 b/gcc/testsuite/gfortran.dg/read_eof_3.f90 index 5cca802c2a6..af35aa6d34c 100644 --- a/gcc/testsuite/gfortran.dg/read_eof_3.f90 +++ b/gcc/testsuite/gfortran.dg/read_eof_3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25835 Check that reading from a file that is at end-of-file does not ! segfault or give error. Test case derived from example in PR from Dale Ranta. ! Contributed by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/read_eof_4.f90 b/gcc/testsuite/gfortran.dg/read_eof_4.f90 index ee95268d50d..da0ae5c185d 100644 --- a/gcc/testsuite/gfortran.dg/read_eof_4.f90 +++ b/gcc/testsuite/gfortran.dg/read_eof_4.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 27575 and PR 30009: This test checks the error checking for end ! of file condition. ! Derived from test case in PR. diff --git a/gcc/testsuite/gfortran.dg/read_many_1.f b/gcc/testsuite/gfortran.dg/read_many_1.f index 4fac689ac48..d015cf833ea 100644 --- a/gcc/testsuite/gfortran.dg/read_many_1.f +++ b/gcc/testsuite/gfortran.dg/read_many_1.f @@ -1,4 +1,4 @@ -!{ dg-do run } +!{ dg-do run { target fd_truncate } } ! PR26423 Large file I/O error related to buffering ! Test case derived from case by Dale Ranta. ! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/read_noadvance.f90 b/gcc/testsuite/gfortran.dg/read_noadvance.f90 index e55763ad8bb..987d811409b 100644 --- a/gcc/testsuite/gfortran.dg/read_noadvance.f90 +++ b/gcc/testsuite/gfortran.dg/read_noadvance.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! pr24719, non-advancing read should read more than one line ! test contributed by jerry delisle <jvdelisle@gcc.gnu.org> implicit none diff --git a/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 b/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 index 819a28dcccb..37ecff90d65 100644 --- a/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 +++ b/gcc/testsuite/gfortran.dg/read_size_noadvance.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR26890 Test for use of SIZE variable in IO list. ! Test case from Paul Thomas. ! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> diff --git a/gcc/testsuite/gfortran.dg/read_x_past.f b/gcc/testsuite/gfortran.dg/read_x_past.f index 4a6d05369d3..16f66234548 100644 --- a/gcc/testsuite/gfortran.dg/read_x_past.f +++ b/gcc/testsuite/gfortran.dg/read_x_past.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options -w } ! PR 26661 : Test reading X's past file end with no LF or CR. ! PR 26880 : Tests that rewind clears the gfc_unit read_bad flag. diff --git a/gcc/testsuite/gfortran.dg/record_marker_1.f90 b/gcc/testsuite/gfortran.dg/record_marker_1.f90 index 5bcfbc611a5..d5d5a2ebb20 100644 --- a/gcc/testsuite/gfortran.dg/record_marker_1.f90 +++ b/gcc/testsuite/gfortran.dg/record_marker_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-frecord-marker=4" } program main diff --git a/gcc/testsuite/gfortran.dg/record_marker_2.f b/gcc/testsuite/gfortran.dg/record_marker_2.f index 725af120d33..83ee7feac11 100644 --- a/gcc/testsuite/gfortran.dg/record_marker_2.f +++ b/gcc/testsuite/gfortran.dg/record_marker_2.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-frecord-marker=4" } ! This file is all about BACKSPACE ! Adapted from gfortran.dg/backspace.f diff --git a/gcc/testsuite/gfortran.dg/record_marker_3.f90 b/gcc/testsuite/gfortran.dg/record_marker_3.f90 index 7459d7210a4..dd9d45505e0 100644 --- a/gcc/testsuite/gfortran.dg/record_marker_3.f90 +++ b/gcc/testsuite/gfortran.dg/record_marker_3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-frecord-marker=8" } program main diff --git a/gcc/testsuite/gfortran.dg/rewind_1.f90 b/gcc/testsuite/gfortran.dg/rewind_1.f90 index cbd2ef17b8f..61392abfdf5 100644 --- a/gcc/testsuite/gfortran.dg/rewind_1.f90 +++ b/gcc/testsuite/gfortran.dg/rewind_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Check that rewind doesn't delete a file. ! Writing to the file truncates it at the end of the current record. Out ! IO library was defering the actual truncation until the file was rewound. diff --git a/gcc/testsuite/gfortran.dg/runtime_warning_1.f90 b/gcc/testsuite/gfortran.dg/runtime_warning_1.f90 index 6af85c344ef..c27e7a27db7 100644 --- a/gcc/testsuite/gfortran.dg/runtime_warning_1.f90 +++ b/gcc/testsuite/gfortran.dg/runtime_warning_1.f90 @@ -3,7 +3,7 @@ ! Contributor Francois-Xavier Coudert <coudert@clipper.ens.fr> ! ! { dg-options "-pedantic" } -! { dg-do run } +! { dg-do run { target fd_truncate } } ! character*5 c open (42,status='scratch') diff --git a/gcc/testsuite/gfortran.dg/shape_3.f90 b/gcc/testsuite/gfortran.dg/shape_3.f90 index ea725a014e9..f715645b924 100644 --- a/gcc/testsuite/gfortran.dg/shape_3.f90 +++ b/gcc/testsuite/gfortran.dg/shape_3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 34980 - we got a segfault for calling shape ! with a scalar. program main diff --git a/gcc/testsuite/gfortran.dg/slash_1.f90 b/gcc/testsuite/gfortran.dg/slash_1.f90 index d4a59a31acf..b62b338c07c 100644 --- a/gcc/testsuite/gfortran.dg/slash_1.f90 +++ b/gcc/testsuite/gfortran.dg/slash_1.f90 @@ -1,5 +1,5 @@ ! PR libfortran/22170 -! { dg-do run } +! { dg-do run { target fd_truncate } } integer i open (10,status='scratch') write (10,'(A,2/,A)') '12', '17' diff --git a/gcc/testsuite/gfortran.dg/stat_1.f90 b/gcc/testsuite/gfortran.dg/stat_1.f90 index 5325634246f..b9dc10095d2 100644 --- a/gcc/testsuite/gfortran.dg/stat_1.f90 +++ b/gcc/testsuite/gfortran.dg/stat_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-std=gnu" } character(len=*), parameter :: f = "testfile" integer :: s1(13), r1, s2(13), r2, s3(13), r3 diff --git a/gcc/testsuite/gfortran.dg/stat_2.f90 b/gcc/testsuite/gfortran.dg/stat_2.f90 index 4bd17cabf0d..b57b52f9300 100644 --- a/gcc/testsuite/gfortran.dg/stat_2.f90 +++ b/gcc/testsuite/gfortran.dg/stat_2.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-std=gnu" } character(len=*), parameter :: f = "testfile" integer :: s1(13), r1, s2(13), r2, s3(13), r3 diff --git a/gcc/testsuite/gfortran.dg/streamio_11.f90 b/gcc/testsuite/gfortran.dg/streamio_11.f90 index 2084a23159b..0ec2f2e8d35 100644 --- a/gcc/testsuite/gfortran.dg/streamio_11.f90 +++ b/gcc/testsuite/gfortran.dg/streamio_11.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR29277 Stream IO test 11, tests formatted form. ! Contributed by Tobias Burnas. program stream_test diff --git a/gcc/testsuite/gfortran.dg/streamio_15.f90 b/gcc/testsuite/gfortran.dg/streamio_15.f90 index 4d1638e561a..09d9a2af1d3 100644 --- a/gcc/testsuite/gfortran.dg/streamio_15.f90 +++ b/gcc/testsuite/gfortran.dg/streamio_15.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR35132 Formatted stream I/O write should truncate. ! Test case adapted from PR by Jerry DeLisle <jvdelisle@gcc.gnu.org> program main diff --git a/gcc/testsuite/gfortran.dg/streamio_3.f90 b/gcc/testsuite/gfortran.dg/streamio_3.f90 index b96e5fc8e1d..0cbab67f6d8 100644 --- a/gcc/testsuite/gfortran.dg/streamio_3.f90 +++ b/gcc/testsuite/gfortran.dg/streamio_3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25828 Stream IO test 3, tests read_x and inquire. ! Contributed by Jerry DeLisle <jvdelisle@verizon.net>. program streamio_3 diff --git a/gcc/testsuite/gfortran.dg/streamio_4.f90 b/gcc/testsuite/gfortran.dg/streamio_4.f90 index 64d2f52dbf1..957df8c53c8 100644 --- a/gcc/testsuite/gfortran.dg/streamio_4.f90 +++ b/gcc/testsuite/gfortran.dg/streamio_4.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR25828 Stream IO test 4, Tests string read and writes, single byte. ! Verifies buffering is working correctly and position="append" ! Contributed by Jerry DeLisle <jvdelisle@verizon.net>. diff --git a/gcc/testsuite/gfortran.dg/tl_editing.f90 b/gcc/testsuite/gfortran.dg/tl_editing.f90 index d2a7ede436f..aa3a01cfd02 100644 --- a/gcc/testsuite/gfortran.dg/tl_editing.f90 +++ b/gcc/testsuite/gfortran.dg/tl_editing.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! Test of fix to bug triggered by NIST fm908.for. ! Left tabbing, followed by X or T-tabbing to the right would ! cause spaces to be overwritten on output data. diff --git a/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90 b/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90 index 3d35312c92c..ad79fd76950 100644 --- a/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90 +++ b/gcc/testsuite/gfortran.dg/unf_io_convert_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-pedantic" } ! This test verifies the most basic sequential unformatted I/O ! with convert="swap". diff --git a/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90 b/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90 index f29f6ee249e..b38da247037 100644 --- a/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90 +++ b/gcc/testsuite/gfortran.dg/unf_io_convert_2.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } program main complex(kind=4) :: c real(kind=4) :: a(2) diff --git a/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90 b/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90 index 1788b457d19..4dd5234fb60 100644 --- a/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90 +++ b/gcc/testsuite/gfortran.dg/unf_read_corrupted_2.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR31880 silent data corruption in gfortran read statement ! Test from PR. program r3 diff --git a/gcc/testsuite/gfortran.dg/unf_short_record_1.f90 b/gcc/testsuite/gfortran.dg/unf_short_record_1.f90 index 45c94c29405..9dca08e5ece 100644 --- a/gcc/testsuite/gfortran.dg/unf_short_record_1.f90 +++ b/gcc/testsuite/gfortran.dg/unf_short_record_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 29627 - partial reads of unformatted records program main character a(3) diff --git a/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90 b/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90 index dbafff131e8..9618ff27a8b 100644 --- a/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90 +++ b/gcc/testsuite/gfortran.dg/unformatted_recl_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR31099 Runtime error on legal code using RECL program test integer(kind=4) :: a, b diff --git a/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90 b/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90 index 5d59daad186..02ed28863eb 100644 --- a/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90 +++ b/gcc/testsuite/gfortran.dg/unformatted_subrecord_1.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! { dg-options "-fmax-subrecord-length=16" } ! Test Intel record markers with 16-byte subrecord sizes. ! PR 32770: Use explicit kinds for all integers and constants, diff --git a/gcc/testsuite/gfortran.dg/vector_subscript_3.f90 b/gcc/testsuite/gfortran.dg/vector_subscript_3.f90 index 974ee4be392..3fa306e1639 100644 --- a/gcc/testsuite/gfortran.dg/vector_subscript_3.f90 +++ b/gcc/testsuite/gfortran.dg/vector_subscript_3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! ! Test the fix for PR34875, in which the read with a vector index ! used to do nothing. diff --git a/gcc/testsuite/gfortran.dg/write_back.f b/gcc/testsuite/gfortran.dg/write_back.f index a491e24a808..a8472f7caa7 100644 --- a/gcc/testsuite/gfortran.dg/write_back.f +++ b/gcc/testsuite/gfortran.dg/write_back.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 26499 : Positioning of EOF after backspaces and write. ! This test verifies that the last write truncates the file. ! Submitted by Jerry DeLisle <jvdelisle@verizon.net>. diff --git a/gcc/testsuite/gfortran.dg/write_check3.f90 b/gcc/testsuite/gfortran.dg/write_check3.f90 index 802a06d27a9..48950965a66 100644 --- a/gcc/testsuite/gfortran.dg/write_check3.f90 +++ b/gcc/testsuite/gfortran.dg/write_check3.f90 @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR29936 Missed constraint on RECL=specifier in unformatted sequential WRITE ! Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org> program us_recl diff --git a/gcc/testsuite/gfortran.dg/write_rewind_1.f b/gcc/testsuite/gfortran.dg/write_rewind_1.f index 0e231875a72..94fec99df7c 100644 --- a/gcc/testsuite/gfortran.dg/write_rewind_1.f +++ b/gcc/testsuite/gfortran.dg/write_rewind_1.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 26499 : Positioning of EOF after write and rewind. ! Test case from Dale Ranta in PR. ! Submitted by Jerry DeLisle <jvdelisle@verizon.net>. diff --git a/gcc/testsuite/gfortran.dg/write_rewind_2.f b/gcc/testsuite/gfortran.dg/write_rewind_2.f index 501995c6eb5..e1a8dec22eb 100644 --- a/gcc/testsuite/gfortran.dg/write_rewind_2.f +++ b/gcc/testsuite/gfortran.dg/write_rewind_2.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 26499 Test write with rewind sequences to make sure buffering and ! end-of-file conditions are handled correctly. Derived from test case by Dale ! Ranta. Submitted by Jerry DeLisle <jvdelisle@gcc.gnu.org>. diff --git a/gcc/testsuite/gfortran.dg/x_slash_1.f b/gcc/testsuite/gfortran.dg/x_slash_1.f index f4f9ed2281c..de576e2e401 100644 --- a/gcc/testsuite/gfortran.dg/x_slash_1.f +++ b/gcc/testsuite/gfortran.dg/x_slash_1.f @@ -1,4 +1,4 @@ -c { dg-do run } +c { dg-do run { target fd_truncate } } c This program tests the fixes to PR22570. c c Provided by Paul Thomas - pault@gcc.gnu.org diff --git a/gcc/testsuite/gfortran.dg/x_slash_2.f b/gcc/testsuite/gfortran.dg/x_slash_2.f index 6023b647d24..9c42f671d81 100644 --- a/gcc/testsuite/gfortran.dg/x_slash_2.f +++ b/gcc/testsuite/gfortran.dg/x_slash_2.f @@ -1,4 +1,4 @@ -! { dg-do run } +! { dg-do run { target fd_truncate } } ! PR 34887 - reverse tabs followed by a slash used to confuse I/O. program main character(len=2) :: b, a diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/backspace.x b/gcc/testsuite/gfortran.fortran-torture/execute/backspace.x new file mode 100644 index 00000000000..b4a54bb23e4 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/execute/backspace.x @@ -0,0 +1,7 @@ +load_lib target-supports.exp + +if { ! [check_effective_target_fd_truncate] } { + return 1 +} + +return 0 diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.x b/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.x new file mode 100644 index 00000000000..b4a54bb23e4 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/execute/list_read_1.x @@ -0,0 +1,7 @@ +load_lib target-supports.exp + +if { ! [check_effective_target_fd_truncate] } { + return 1 +} + +return 0 diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.x b/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.x new file mode 100644 index 00000000000..b4a54bb23e4 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/execute/read_null_string.x @@ -0,0 +1,7 @@ +load_lib target-supports.exp + +if { ! [check_effective_target_fd_truncate] } { + return 1 +} + +return 0 diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.x b/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.x new file mode 100644 index 00000000000..b4a54bb23e4 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/execute/seq_io.x @@ -0,0 +1,7 @@ +load_lib target-supports.exp + +if { ! [check_effective_target_fd_truncate] } { + return 1 +} + +return 0 diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.x b/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.x new file mode 100644 index 00000000000..b4a54bb23e4 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/execute/slash_edit.x @@ -0,0 +1,7 @@ +load_lib target-supports.exp + +if { ! [check_effective_target_fd_truncate] } { + return 1 +} + +return 0 diff --git a/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.x b/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.x new file mode 100644 index 00000000000..b4a54bb23e4 --- /dev/null +++ b/gcc/testsuite/gfortran.fortran-torture/execute/unopened_unit_1.x @@ -0,0 +1,7 @@ +load_lib target-supports.exp + +if { ! [check_effective_target_fd_truncate] } { + return 1 +} + +return 0 diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index 20bcdeaee88..e2667ff9417 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -2227,6 +2227,45 @@ proc check_effective_target_pthread_h { } { }] } +# Return 1 if the target can truncate a file from a file-descriptor, +# as used by libgfortran/io/unix.c:fd_truncate; i.e. ftruncate or +# chsize. We test for a trivially functional truncation; no stubs. +# As libgfortran uses _FILE_OFFSET_BITS 64, we do too; it'll cause a +# different function to be used. + +proc check_effective_target_fd_truncate { } { + set prog { + #define _FILE_OFFSET_BITS 64 + #include <unistd.h> + #include <stdio.h> + #include <stdlib.h> + int main () + { + FILE *f = fopen ("tst.tmp", "wb"); + int fd; + const char t[] = "test writing more than ten characters"; + char s[11]; + fd = fileno (f); + write (fd, t, sizeof (t) - 1); + lseek (fd, 0, 0); + if (ftruncate (fd, 10) != 0) + exit (1); + close (fd); + f = fopen ("tst.tmp", "rb"); + if (fread (s, 1, sizeof (s), f) != 10 || strncmp (s, t, 10) != 0) + exit (1); + exit (0); + } + } + + if { [check_runtime ftruncate $prog] } { + return 1; + } + + regsub "ftruncate" $prog "chsize" prog + return [check_runtime chsize $prog] +} + # Add to FLAGS all the target-specific flags needed to access the c99 runtime. proc add_options_for_c99_runtime { flags } { |