re PR fortran/25090 (Bad automatic character length)
authorPaul Thomas <pault@gcc.gnu.org>
Mon, 15 May 2006 17:16:26 +0000 (17:16 +0000)
committerPaul Thomas <pault@gcc.gnu.org>
Mon, 15 May 2006 17:16:26 +0000 (17:16 +0000)
commitb6398823e7ff715272f35ceae58da3d3219523cc
treefedad2a76662472ff4fb41499498b3e8a81eb3b3
parenta01456333d6e310a0ba2f46ed1ade2d46a8a789b
re PR fortran/25090 (Bad automatic character length)

2006-05-15  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25090
* resolve.c: Static resolving_index_expr initialized.
(entry_parameter): New function to emit errors for variables
that are not entry parameters.
(gfc_resolve_expr): Call entry_parameter, when resolving
variables, if the namespace has entries and resolving_index_expr
is set.
(resolve_charlen): Set resolving_index_expr before the call to
resolve_index_expr and reset it afterwards.
(resolve_fl_variable): The same before and after the call to
is_non_constant_shape_array, which ultimately makes a call to
gfc_resolve_expr.

PR fortran/25082
* resolve.c (resolve_code): Add error condition that the return
expression must be scalar.

PR fortran/24711
* matchexp.c (gfc_get_parentheses): New function.
(match_primary): Remove inline code and call above.
* gfortran.h: Provide prototype for gfc_get_parentheses.
* resolve.c (resolve_array_ref): Call the above, when start is a
derived type variable array reference.

2006-05-15  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/25090
* gfortran.dg/entry_dummy_ref_1.f90: New test.

PR fortran/25082
* gfortran.dg/scalar_return_1.f90: New test.

PR fortran/24711
* gfortran.dg/derived_comp_array_ref_1.f90: New test.

From-SVN: r113796
gcc/fortran/ChangeLog
gcc/fortran/gfortran.h
gcc/fortran/matchexp.c
gcc/fortran/resolve.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/derived_comp_array_ref_1.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/entry_dummy_ref_1.f90 [new file with mode: 0644]
gcc/testsuite/gfortran.dg/scalar_return_1.f90 [new file with mode: 0644]