]> gcc.gnu.org Git - gcc.git/commit - gcc/fortran/decl.c
re PR fortran/23994 (PROTECTED attribute (F2003) is not implemented)
authorTobias Burnus <burnus@net-b.de>
Sun, 10 Dec 2006 19:53:07 +0000 (20:53 +0100)
committerTobias Burnus <burnus@gcc.gnu.org>
Sun, 10 Dec 2006 19:53:07 +0000 (20:53 +0100)
commitee7e677fdd929eb1b9fd60efa476c86fd0692784
treefd873c228f212288e3d63dae896648e0ca50835b
parent42c1cd8a7ac43e4d324fbd4f6051ec56f83cd00b
re PR fortran/23994 (PROTECTED attribute (F2003) is not implemented)

fortran/
2006-12-10  Tobias Burnus  <burnus@net-b.de>

    PR fortran/23994
    * interface.c (compare_actual_formal): PROTECTED is incompatible
with intent(out).
    * symbol.c (check_conflict): Check for PROTECTED conflicts.
      (gfc_add_protected): New function.
      (gfc_copy_attr): Copy PROTECTED attribute.
    * decl.c (match_attr_spec): Add PROTECTED support.
      (gfc_match_protected): New function.
    * dump-parse-tree.c (gfc_show_attr): Add PROTECTED support.
    * gfortran.h (gfc_symbol): Add protected flag.
      Add gfc_add_protected prototype.
    * expr.c (gfc_check_pointer_assign): Add PROTECTED support.
    * module.c (ab_attribute, attr_bits, mio_symbol_attribute,
mio_symbol_attribute):
       Add PROTECTED support.
    * resolve.c (resolve_equivalence): Add PROTECTED support.
    * match.c (gfc_match_assignment,)gfc_match_pointer_assignment:
       Check PROTECTED attribute.
    * match.h: Add gfc_match_protected prototype.
    * parse.c (decode_statement): Match PROTECTED statement.
    * primary.c (match_variable): Add PROTECTED support.

testsuite/
2006-12-10  Tobias Burnus  <burnus@net-b.de>

    PR fortran/23994
    * gfortran.dg/protected_1.f90: New test.
    * gfortran.dg/protected_2.f90: New test.
    * gfortran.dg/protected_3.f90: New test.
    * gfortran.dg/protected_4.f90: New test.
    * gfortran.dg/protected_5.f90: New test.
    * gfortran.dg/protected_6.f90: New test.

From-SVN: r119709
20 files changed:
gcc/fortran/ChangeLog
gcc/fortran/decl.c
gcc/fortran/dump-parse-tree.c
gcc/fortran/expr.c
gcc/fortran/gfortran.h
gcc/fortran/interface.c
gcc/fortran/match.c
gcc/fortran/match.h
gcc/fortran/module.c
gcc/fortran/parse.c
gcc/fortran/primary.c
gcc/fortran/resolve.c
gcc/fortran/symbol.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/protected_1.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/protected_2.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/protected_3.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/protected_4.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/protected_5.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/protected_6.f90 [new file with mode: 0644]
This page took 0.060459 seconds and 5 git commands to generate.