From 89031799f4009b0416164a7e77a7b008e63d94ad Mon Sep 17 00:00:00 2001 From: =?utf8?q?Tobias=20Schl=C3=BCter?= Date: Tue, 14 Feb 2006 20:21:07 +0100 Subject: [PATCH] re PR fortran/26277 (false warning about unused label for a warning used in err=) fortran/ PR fortran/26277 * io.c (match_ltag): Mark label as referenced. testsuite/ PR fortran/26277 * gfortran.dg/label_4.f90: New. From-SVN: r110993 --- gcc/fortran/ChangeLog | 5 +++++ gcc/fortran/io.c | 4 ++++ gcc/testsuite/ChangeLog | 5 +++++ gcc/testsuite/gfortran.dg/label_4.f90 | 8 ++++++++ 4 files changed, 22 insertions(+) create mode 100644 gcc/testsuite/gfortran.dg/label_4.f90 diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 7a36057a8f2..faf6975e2df 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2006-02-14 Tobias Schlüter + + PR fortran/26277 + * io.c (match_ltag): Mark label as referenced. + 2006-02-14 Jakub Jelinek Richard Henderson Diego Novillo diff --git a/gcc/fortran/io.c b/gcc/fortran/io.c index c88c74a7d23..618d056ce79 100644 --- a/gcc/fortran/io.c +++ b/gcc/fortran/io.c @@ -972,6 +972,10 @@ match_ltag (const io_tag * tag, gfc_st_label ** label) return MATCH_ERROR; } + if (m == MATCH_YES + && gfc_reference_st_label (*label, ST_LABEL_TARGET) == FAILURE) + return MATCH_ERROR; + return m; } diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index d12f8741c62..cb15ef61fec 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2006-02-14 Tobias Schlüter + + PR fortran/26277 + * gfortran.dg/label_4.f90: New. + 2006-02-14 Jakub Jelinek Diego Novillo Uros Bizjak diff --git a/gcc/testsuite/gfortran.dg/label_4.f90 b/gcc/testsuite/gfortran.dg/label_4.f90 new file mode 100644 index 00000000000..68b2291fbea --- /dev/null +++ b/gcc/testsuite/gfortran.dg/label_4.f90 @@ -0,0 +1,8 @@ +! { dg-do compile } +! { dg-options "-Wunused-labels" } +! PR 26277 +! We used to give an incorect warning about label 99 not being referenced + open(unit=12,err=99) +99 print *,"could not open file ..." +98 continue ! { dg-warning "Label 98 .* defined but not used" } +end -- 2.30.2