diff options
author | Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de> | 2005-12-22 12:37:03 +0100 |
---|---|---|
committer | Tobias Schlüter <tobi@gcc.gnu.org> | 2005-12-22 12:37:03 +0100 |
commit | 110eec241d7bc08f91573738b449bafbb52e3498 (patch) | |
tree | f8fc1a9545c40e8286e72097ca770b0898d568cf /gcc/fortran/expr.c | |
parent | e0e85e0617394f491e74fd1d8c5f121fa5527487 (diff) | |
download | gcc-110eec241d7bc08f91573738b449bafbb52e3498.zip gcc-110eec241d7bc08f91573738b449bafbb52e3498.tar.gz gcc-110eec241d7bc08f91573738b449bafbb52e3498.tar.bz2 |
re PR fortran/18990 (ICE in gfc_get_derived_type, at fortran/trans-types.c)
fortran/
PR fortran/18990
* gfortran.h (gfc_charlen): Add resolved field.
* expr.c (gfc_specification_expr): Accept NULL argument.
* resolve.c (gfc_resolve_charlen, gfc_resolve_derived): New.
(gfc_resolve_symbol): Resolve derived type definitions. Use
resolve_charlen to resolve character lengths.
testsuite/
PR fortran/18990
* gfortran.dg/der_charlen_1.f90: New.
From-SVN: r108946
Diffstat (limited to 'gcc/fortran/expr.c')
-rw-r--r-- | gcc/fortran/expr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/fortran/expr.c b/gcc/fortran/expr.c index c1451e3..c55b142 100644 --- a/gcc/fortran/expr.c +++ b/gcc/fortran/expr.c @@ -1768,6 +1768,8 @@ check_restricted (gfc_expr * e) try gfc_specification_expr (gfc_expr * e) { + if (e == NULL) + return SUCCESS; if (e->ts.type != BT_INTEGER) { |